Beacon Roofing Supply Template API

The Template API from Beacon Roofing Supply — 1 operation(s) for template.

Operations 1

GET /template Lists templates and template details for current user #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/beacon-roofing-supply-template-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

beacon-roofing-supply-template-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Beacon Rest Services Template API
  description: 'A combination of all methods in the beacon-api


    [ BASE URL: https://beaconproplus.com


    Beacon ProPlus


    Version 1: https://beaconproplus.com/v1/rest/com/becn


    Version 2: https://beaconproplus.com/v2/rest/com/becn


    Version 3: https://beaconproplus.com/v3/rest/com/becn


    Beacon Stack


    [ BASE URL: https://beacon-api-x7xzzdp35a-uk.a.run.app


    Version 1: https://beacon-api-x7xzzdp35a-uk.a.run.app/v1/rest/com/becn/


    Version 2: https://beacon-api-x7xzzdp35a-uk.a.run.app/v2/rest/com/becn/


    Version 3…'
  version: '1.0'
  contact: {}
servers: []
tags:
- name: Template
paths:
  /template:
    get:
      operationId: V2Controller_template
      summary: Lists templates and template details for current user
      description: Lists templates and the template details for the current user.
      parameters:
      - name: Account
        required: false
        in: path
        description: If not empty, will filter result by given account id
        schema:
          type: string
      - name: showItems
        required: false
        in: path
        description: Default is false. If "true", response will display template items
        schema:
          type: string
      - name: showItemVariations
        required: false
        in: path
        description: Default is false. If "true", response will display variations of each template item
        schema:
          type: string
      - name: showPricing
        required: false
        in: path
        description: Default is false. If "true", response will display pricing of each template item
        schema:
          type: string
      - name: showItemAvailable
        required: false
        in: path
        description: Default is true. If "false", response will not display item availability in region
        schema:
          type: string
      - name: pageSize
        required: false
        in: path
        description: Default is 10 and max is 100 for record count of each page
        schema:
          type: number
      - name: pageNo
        required: false
        in: path
        description: Default is 1, the first page. Specifies returned starting page number or page index.
        schema:
          type: number
      - name: invokeBy
        required: false
        in: path
        description: If value is "store", will do the store logic which is the legacy logic in place to enable search function or filtering.
        schema:
          type: string
      - name: filterBy
        required: false
        in: path
        description: If "invokeBy=store", the search key feature is enabled.<br><br>filterBy enumeration<ul><li>templateName</li><li>dataLastModified</li><li>account</li><li>createdBy</li></ul>
        schema:
          type: string
      - name: filter
        required: false
        in: path
        description: If "invokeBy=store", the search terms feature is enabled.
        schema:
          type: string
      - name: orderBy
        required: false
        in: path
        description: Default is "dataLastModified desc". This feature is enabled only when "invokeBy = store"<br><br>orderBy enumeration<ul><li>templateName asc/desc</li><li>dataLastModified asc/desc</li><li>account asc/desc</li><li>createdBy asc/desc</li></ul>
        schema:
          type: string
      responses:
        '200':
          description: successful operation<br><br>refer to the <i>API Uniform Format</i> dropdown above
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/templateResponse'
        '400':
          description: Bad Request, accountId is invalid.
        '401':
          description: Unauthorized, the authorization bearer token is invalid.
        '405':
          description: Method not allowed, the request method is not valid for this API or this API is not available.
        '500':
          description: Internal exception.
      tags:
      - Template
components:
  schemas:
    Result:
      type: object
      properties:
        pageRows:
          type: number
        pages:
          type: number
        page:
          type: number
        rows:
          type: number
        rowsPerPage:
          type: number
      required:
      - pageRows
      - pages
      - page
      - rows
      - rowsPerPage
    CurrentVariation:
      type: object
      properties:
        typeId:
          type: string
        typeName:
          type: string
        options:
          type: array
          items:
            $ref: '#/components/schemas/Option'
      required:
      - typeId
      - typeName
      - options
    templateResponse:
      type: object
      properties:
        totalNumRecs:
          type: number
        pageNumRecs:
          type: number
        templates:
          type: array
          items:
            $ref: '#/components/schemas/Template'
        pagination:
          $ref: '#/components/schemas/Pagination'
      required:
      - totalNumRecs
      - pageNumRecs
      - templates
      - pagination
    Template:
      type: object
      properties:
        templateId:
          type: string
        templateName:
          type: string
        lastModifiedDate:
          type: string
        lastModifiedUser:
          $ref: '#/components/schemas/LastModifiedUser'
        accountLegacyId:
          type: string
        isAccountClosed:
          type: boolean
        accountName:
          type: string
        createdByUser:
          $ref: '#/components/schemas/LastModifiedUser'
        templateItems:
          type: array
          items:
            $ref: '#/components/schemas/TemplateItem'
      required:
      - templateId
      - templateName
      - lastModifiedDate
      - lastModifiedUser
      - accountLegacyId
      - isAccountClosed
      - accountName
      - createdByUser
      - templateItems
    Next:
      type: object
      properties:
        available:
          type: boolean
        label:
          type: string
        page:
          type: number
      required:
      - available
      - label
      - page
    TemplateItem:
      type: object
      properties:
        templateItemId:
          type: string
        productImageUrl:
          type: string
        productOnErrorImageUrl:
          type: string
        itemOrProductDescription:
          type: string
        itemNumber:
          type: string
        nickName:
          type: string
        productOrItemNumber:
          type: string
        internalProductName:
          type: string
        currentVariation:
          $ref: '#/components/schemas/CurrentVariation'
        variations:
          type: array
          items:
            $ref: '#/components/schemas/CurrentVariation'
        unitPrice:
          type: number
        unitOfMeasure:
          type: string
        quantity:
          type: number
        available:
          type: boolean
        imageUrl:
          $ref: '#/components/schemas/ImageUrl'
      required:
      - templateItemId
      - productImageUrl
      - productOnErrorImageUrl
      - itemOrProductDescription
      - itemNumber
      - nickName
      - productOrItemNumber
      - internalProductName
      - currentVariation
      - variations
      - unitPrice
      - unitOfMeasure
      - quantity
      - available
      - imageUrl
    LastModifiedUser:
      type: object
      properties:
        profileId:
          type: string
        firstName:
          type: string
        lastName:
          type: string
        emailAddress:
          type: string
      required:
      - profileId
      - firstName
      - lastName
      - emailAddress
    ImageUrl:
      type: object
      properties:
        thumbnail:
          type: string
        large:
          type: string
      required:
      - thumbnail
      - large
    Option:
      type: object
      properties:
        optionId:
          type: string
        optionName:
          type: string
        opectionChecked:
          type: boolean
        skuId:
          type: string
      required:
      - optionId
      - optionName
      - opectionChecked
      - skuId
    Pagination:
      type: object
      properties:
        next:
          $ref: '#/components/schemas/Next'
        previous:
          $ref: '#/components/schemas/Next'
        pageSize:
          type: number
        currentPage:
          type: number
        totalCount:
          type: number
        results:
          type: array
          items:
            $ref: '#/components/schemas/Result'
      required:
      - next
      - previous
      - pageSize
      - currentPage
      - totalCount
      - results