Matik
Authentication Type: OAuth Description: Generate data-driven presentations from Matik templates. List templates, discover their required inputs, create presentations, and download the results as PDFs.
Authentication
Matik's API uses OAuth 2.0. To connect Matik to Cotera you'll need three values:
- Ask your Matik account manager to enable the Matik REST API for your account.
- In Matik, click your avatar → Enterprise Settings → Clients and create a new client. Save the Client ID and Client Secret (the secret is only shown once).
- Complete the OAuth authorization flow for that client to obtain a Refresh Token (see the Matik Quick Start Guide).
Provide the Client ID, Client Secret, and Refresh Token when connecting. Cotera exchanges the refresh token for a short-lived access token on every request.
Templates
Discover the templates available in your Matik account and the inputs each one requires.
List Templates
List the presentation templates available in Matik. Use this to find the template ID to generate presentations from.
Operation Type: Query (Read)
Parameters:
- filters
string(nullable): Optional JSON filter string, e.g.{"source_q":"123"}
Returns:
- templates
array of objects: The templates available to the connected user- id
number: The template ID (used to generate presentations) - name
string: The name of the template - sourceType
string: The template type: "google", "presentation", or "email" - isLibrary
boolean: Whether this is a library template - isSubTemplate
boolean: Whether this is a sub template - thumbnailUrl
string(nullable): Thumbnail of the first slide of the template - tags
array of strings: Tags applied to the template - inputsOrder
array of strings: The order of the template's inputs
- id
Example Usage:
{
"filters": null
}
Get Template Inputs
Get the inputs required to generate a presentation from a template. Call this before creating a presentation to learn which input names and values the template expects.
Operation Type: Query (Read)
Parameters:
- templateId
number(required): The ID of the Matik template to fetch inputs for
Returns:
- inputs
array of objects: The inputs required to generate a presentation from the template, including each input's name, type, and allowed values - queryCallback
string(nullable): Optional callback URL to poll for nested inputs
Example Usage:
{
"templateId": 1234
}
Presentations
Generate presentations from templates and retrieve the results.
Create Presentation
Generate a new presentation from a Matik template with the provided input values. Generation is asynchronous — use Get Presentation Status to poll until it completes.
Operation Type: Mutation (Write)
Parameters:
- templateId
number(required): The ID of the Matik template to generate the presentation from - name
string(nullable): The name of the generated presentation - inputs
array of objects(required): Input values for the template. Use Get Template Inputs to discover the required input names- name
string(required): The input name - value
string(required): The input value. JSON array values (e.g.["a","b"]) are parsed as lists
- name
- includePdf
boolean(nullable): Whether to also render a PDF of the presentation
Returns:
- id
number: The ID of the new presentation - status
string: The initial generation status (e.g. "pending")
Example Usage:
{
"templateId": 1234,
"name": "Q3 Business Review - Acme Corp",
"inputs": [
{ "name": "account_name", "value": "Acme Corp" },
{ "name": "quarter", "value": "Q3 2026" },
{ "name": "regions", "value": "[\"NA\",\"EMEA\"]" }
],
"includePdf": true
}
Get Presentation Status
Check the generation status of a Matik presentation. Once generation completes, the response includes the presentation's download URL.
Operation Type: Query (Read)
Parameters:
- presentationId
number(required): The ID of the presentation to check (returned from Create Presentation)
Returns:
- id
number: The presentation ID - status
string: The generation status (e.g. "pending", "completed") - name
string(nullable): The presentation name (available when completed) - downloadUrl
string(nullable): Download URL for the presentation (available when completed)
Example Usage:
{
"presentationId": 5678
}
Get Presentation PDF
Get a download URL for the PDF version of a generated presentation.
Operation Type: Query (Read)
Parameters:
- presentationId
number(required): The ID of the presentation to get the PDF for
Returns:
- downloadUrl
string: Download URL for the PDF
Example Usage:
{
"presentationId": 5678
}
Common Use Cases
Customer-Facing Decks:
- Generate quarterly business reviews from CRM and product data
- Create renewal and upsell decks personalized to each account
- Build onboarding and kickoff presentations from templates
Workflow Automation:
- Automatically generate a deck whenever a deal reaches a pipeline stage
- Produce recurring reporting decks on a schedule
- Let agents pick the right template, fill in inputs, and deliver the finished PDF
Data-Driven Content:
- Keep presentation content in sync with live data sources connected to Matik
- Generate one deck per account from a list of accounts
- Export presentations as PDFs for email delivery or archiving