Skip to main content
GET
/
api
/
partner
/
v1
/
templates
/
{templateId}
curl --request GET \
  --url https://www.genviral.io/api/partner/v1/templates/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa \
  --header 'Authorization: Bearer <token>'
{
  "ok": true,
  "code": 200,
  "message": "Template retrieved",
  "data": {
    "id": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",
    "name": "Hooks Template",
    "description": "2-slide educational format",
    "visibility": "workspace",
    "preview_url": null,
    "use_count": 12,
    "last_used_at": "2026-02-14T09:11:00.000Z",
    "created_at": "2026-02-12T15:00:00.000Z",
    "updated_at": "2026-02-14T09:11:00.000Z",
    "is_owner": true,
    "config": {
      "version": 1,
      "structure": {
        "slides": [
          {
            "type": "pack",
            "id": "11111111-1111-1111-1111-111111111111",
            "pinnedImageUrl": null,
            "textElements": [
              {
                "id": "22222222-2222-2222-2222-222222222222",
                "content": "Hook text",
                "x": 50,
                "y": 25,
                "fontSize": 48,
                "width": 70
              }
            ]
          }
        ]
      },
      "content": {
        "mode": "manual",
        "productId": null,
        "language": "en",
        "slideshowType": "educational"
      },
      "visuals": {
        "packId": null,
        "aspectRatio": "4:5",
        "textSettings": {
          "fontSize": "default",
          "preset": "tiktok",
          "width": "default"
        }
      }
    }
  }
}
Fetches one template visible to the authenticated key scope.

Path Parameters

templateId
string
required
Template UUID.
curl --request GET \
  --url https://www.genviral.io/api/partner/v1/templates/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa \
  --header 'Authorization: Bearer <token>'
{
  "ok": true,
  "code": 200,
  "message": "Template retrieved",
  "data": {
    "id": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",
    "name": "Hooks Template",
    "description": "2-slide educational format",
    "visibility": "workspace",
    "preview_url": null,
    "use_count": 12,
    "last_used_at": "2026-02-14T09:11:00.000Z",
    "created_at": "2026-02-12T15:00:00.000Z",
    "updated_at": "2026-02-14T09:11:00.000Z",
    "is_owner": true,
    "config": {
      "version": 1,
      "structure": {
        "slides": [
          {
            "type": "pack",
            "id": "11111111-1111-1111-1111-111111111111",
            "pinnedImageUrl": null,
            "textElements": [
              {
                "id": "22222222-2222-2222-2222-222222222222",
                "content": "Hook text",
                "x": 50,
                "y": 25,
                "fontSize": 48,
                "width": 70
              }
            ]
          }
        ]
      },
      "content": {
        "mode": "manual",
        "productId": null,
        "language": "en",
        "slideshowType": "educational"
      },
      "visuals": {
        "packId": null,
        "aspectRatio": "4:5",
        "textSettings": {
          "fontSize": "default",
          "preset": "tiktok",
          "width": "default"
        }
      }
    }
  }
}

Error Responses

  • 400 missing_template_id - path param missing
  • 404 not_found - template is missing/outside key scope
  • 401 - authentication failed (missing/invalid/revoked token)
  • 402 subscription_required - active Creator/Professional/Business plan required
  • 403 tier_not_allowed - Scheduler tier cannot use Partner API
  • 500 template_get_failed - unexpected retrieval failure