Turn Microsoft 365 Events Into Syncro Tickets With a Power Automate Custom Connector
TL;DR
- A Power Automate custom connector wraps Syncro's REST API so flows in customer tenants can create tickets, and Syncro events can drive actions in Microsoft 365.
- The connector authenticates with an API key passed in an Authorization header, and the connection value must be entered as the word Bearer, a space, then the API key.
- Actions are defined by importing a sample POST request from Syncro's API documentation, so testing calls in Postman first tells you exactly which fields you need.
- Static fields like Content-Type and customer_id can be given default values, marked required, and set to internal so nobody can change them in a flow.
- Power Automate ships with most Microsoft 365 plans, but the connector must be created per customer environment.
Every MSP has a list of small, repetitive bridges between Microsoft 365 and the PSA that nobody has automated yet. Power Automate closes a lot of them: it builds workflows across applications from basic triggers and actions, and custom connectors let you bring any REST API into those flows. This walkthrough builds Syncro as a custom connector, then defines a create-ticket action as the working example. Once it exists, events in customer tenants can raise tickets in Syncro, and triggers can run the other way too, a new contact in Syncro creating a user in Azure AD, for instance.
What you need before you start
Fair warning: this is a more advanced build because everything happens against APIs. If you have no experience there, the time investment may not pay off. Beyond that:
- A Power Automate subscription per customer, since the connector is created inside each customer environment. Power Automate comes with most Microsoft 365 plans.
- An API key (opens in new tab) created in your Syncro environment with the permissions for the actions you plan to build (Tickets - Create if you want to create tickets).
- Access to and familiarity with Syncro's REST API (opens in new tab).
- Postman. We use it to test the API calls and grab the IDs the actions will need, like the customer ID for new tickets.
Build the connector shell
Log in to Power Automate and select Data > Custom Connectors.

Select + New Custom Connector > Create from blank.

On the General page:
- Upload an image (optional).
- Provide a description (optional).
- In the host section, enter the URL you use to sign in to Syncro.
- In the Base URL, add /api/v1.
- Click Security.

Set up API key authentication
- Choose API Key as the authentication type.
- Enter a parameter label of api-key.
- For the parameter name, enter Authorization.
- Click Definition.

Define the create-ticket action
Definitions are where you declare Syncro actions and triggers, and you can create as many as you want. For the ticket action, select + New action and fill in the summary fields:

Then, under Request, select + Import from sample:
- Select POST.
- For the URL, use the format
https://yourSubdomain.syncromsp.com/api/v1/tickets. This request URL is specific to tickets. - In the body, paste the example value for a POST request from Syncro's API documentation. This is where you decide which fields the ticket action exposes. Some are required, subject, customer_id, body, which is exactly why testing in Postman first is worth it: you learn what each call actually needs. If you already know the workflows that will use this action, trim the body to only the fields you want in the ticket and skip the clutter.
- With the body entered, click Import.


Lock down the static fields
With the request template in place, you can modify the headers and body fields. This matters for values that never change: give them defaults, make them required, and set them to internal so nobody can alter them when building a flow. We will do that for Content-Type and customer_id.
Click the three dots next to Content-Type and click Edit.

Fill out Content-Type as below, default value set, required, internal:

Click the back arrow, then edit the body. You will see every field from your JSON. Edit customer_id and prepopulate it with the correct customer ID; this customer should match the tenant you are building the connector in.

Postman earns its keep here: use the customers call to read the unique IDs of your customers.

Before testing, consider marking Body and Subject as required inputs for the action. Note that tickets carry two subjects, one for the main ticket and one for the first comment, so give one of them a default value or a distinguishing title.

Once every field is saved, click Create connector.

Test it against your Syncro environment
After the success message, click Test > + New connection.

You will be asked for the API key from the prerequisites. The format of this entry is critical: type Bearer, a space, then the API key. Then click Create connection.

On the following page, click refresh to see the connection you just set up.

You will now see all the fields from your JSON body. Enter sample values and click Test operation.

A 200 status with the body of the ticket you just created means success. An error usually means one of two things:
- A required field for the API call was left empty, and the error names it (Subject, for example).
- An unauthorized error, which means the API key was entered in the wrong format or was never granted the Syncro permissions for this call.

Back in Syncro, the ticket generated by the test event is waiting:


Use it in a flow
When you build a flow, select Custom to find your connector. Clicking into it shows every action and trigger you have created.


From here, the pattern repeats: every Syncro endpoint you care about becomes another action or trigger, and every manual bridge between Microsoft 365 and your PSA becomes a candidate for a flow.
Frequently asked questions
Why does the test return an unauthorized error?
Either the API key was entered in the wrong format, it must be Bearer, a space, then the key, or the API key was not granted the Syncro permissions needed for the call, such as Tickets - Create.
Can the connector handle triggers from Syncro as well as actions?
Yes. Triggers can be set up from Syncro, such as a new contact being created, that generate actions in Microsoft 365 like creating a user in Azure AD. The definition step supports both triggers and actions.
Why do tickets have two subject fields?
Syncro's ticket model has one subject for the ticket itself and another for the first comment. Give one of them a default value or a distinct title so people building flows can tell them apart.
Automate the response. Know what to respond to.
A connector can file the ticket, but something has to spot the problem first. CloudCapsule scans 250+ Microsoft 365 controls per tenant in about 60 seconds and hands your automation real findings to work with.
See the features
Written by
Nick Ross
CEO · Microsoft MVP · Founder, T-Minus 365
Nick is not just a CEO, he's a respected thought leader and influencer in the MSP space. Tens of thousands of MSPs learn through his YouTube channel, T-Minus365. Nick has been honored as a three-time Microsoft MVP for his educational content; his expertise and influence are the backbone of our mission, ensuring that you are in the best hands when it comes to security.
Nick joined Pax8 in 2017, where he would ultimately oversee product management for PSA and Microsoft integrations. Following his tenure at Pax8, Nick has continued to demonstrate his leadership prowess as an executive at various MSPs, culminating in his most recent role at Sourcepass.
Nick holds a Bachelor's Degree in Business Management from Florida State University, as well as a Minor Degree in Entrepreneurship. In his free time, Nick is an avid hiker, reader, and fitness-junkie.


