Skip to main content
POST
/
api
/
v1
/
templates
/
match
Match input to templates
curl --request POST \
  --url https://api.example.com/api/v1/templates/match \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "slide_data": {},
  "org_name": "<string>",
  "match_against": "slides",
  "top_k": 5
}
'
{
  "input_signature": {},
  "matches": [
    {
      "template_id": "<string>",
      "slide_id": "<string>",
      "slide_index": 123,
      "score": 123,
      "is_exact_match": true,
      "matched_counts": {
        "title": 123,
        "subtitle": 123,
        "body": 123,
        "footer": 123,
        "table": 123,
        "chart": 123,
        "textbox": 123,
        "object": 123,
        "custom_field": 123
      },
      "layout_name": "<string>",
      "overflow_counts": {
        "title": 123,
        "subtitle": 123,
        "body": 123,
        "footer": 123,
        "table": 123,
        "chart": 123,
        "textbox": 123,
        "object": 123,
        "custom_field": 123
      },
      "unused_counts": {
        "title": 123,
        "subtitle": 123,
        "body": 123,
        "footer": 123,
        "table": 123,
        "chart": 123,
        "textbox": 123,
        "object": 123,
        "custom_field": 123
      }
    }
  ],
  "total_templates_searched": 123,
  "total_slides_searched": 123,
  "best_match": {
    "template_id": "<string>",
    "slide_id": "<string>",
    "slide_index": 123,
    "score": 123,
    "is_exact_match": true,
    "matched_counts": {
      "title": 123,
      "subtitle": 123,
      "body": 123,
      "footer": 123,
      "table": 123,
      "chart": 123,
      "textbox": 123,
      "object": 123,
      "custom_field": 123
    },
    "layout_name": "<string>",
    "overflow_counts": {
      "title": 123,
      "subtitle": 123,
      "body": 123,
      "footer": 123,
      "table": 123,
      "chart": 123,
      "textbox": 123,
      "object": 123,
      "custom_field": 123
    },
    "unused_counts": {
      "title": 123,
      "subtitle": 123,
      "body": 123,
      "footer": 123,
      "table": 123,
      "chart": 123,
      "textbox": 123,
      "object": 123,
      "custom_field": 123
    }
  }
}

Documentation Index

Fetch the complete documentation index at: https://duomi.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

X-API-Key
string
header
required

Production API key. Development/test deployments may also allow X-Org-Name.

Body

application/json

Request schema for template matching.

slide_data
Slide Data · object
required

Slide data input (same format as SlideDataInput for generation)

org_name
string | null

Organization name to scope the search. If provided, must match the API key's organization. If omitted, the API key's organization is used.

match_against
string
default:slides

Match against 'slides' or 'layouts'

top_k
integer
default:5

Number of top matches to return

Required range: 1 <= x <= 20

Response

Successful Response

Response schema for template matching.

input_signature
Input Signature · object
required

Parsed input signature

matches
MatchResultResponse · object[]
required

Ranked match results

total_templates_searched
integer
required

Number of templates searched

total_slides_searched
integer
required

Number of slides/layouts searched

best_match
MatchResultResponse · object

Top match