Tribute Technology Serving Locations API

Funeral-home rooftops (serving locations) that obituaries attach to.

OpenAPI Specification

tributetech-serving-locations-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Tribute Store Authentication Serving Locations API
  description: 'The Tribute Store API is a REST-style JSON API from Tribute Technology for partners who integrate funeral-home case-management systems with the Tribute Store. It lets an integrator authenticate a funeral home, push its serving locations (rooftops), and push obituary cases (the deceased, their obituary text, service events, and a photo). Each successfully posted obituary automatically provisions a personalized Tribute Store page for the deceased, reachable at the store base URL with an ?oId={OBITUARY_ID} query string.


    Access is partner-gated. Tribute Technology issues each integrator a {Provider} credential plus an IP allowlist, and issues each funeral home a {HostName, UserName, Password} triple. The triple is exchanged at the token endpoint for a short-lived HTML bearer token that scopes all subsequent requests to that funeral home.


    This document was modeled from the public "Tribute Store API Documentation 1.1" (updated March 25, 2019). Field lists and endpoints are taken verbatim from that document; response object schemas beyond the documented sample fields are omitted rather than fabricated.'
  version: '1.1'
  contact:
    name: Tribute Technology
    url: https://www.tributetech.com
servers:
- url: https://api.tributecenteronline.com
  description: Production
- url: https://api.demo.tributecenteronline.com
  description: Development / Demo
security:
- bearerAuth: []
tags:
- name: Serving Locations
  description: Funeral-home rooftops (serving locations) that obituaries attach to.
paths:
  /api/external-location/post:
    post:
      operationId: postExternalLocation
      tags:
      - Serving Locations
      summary: Create or update a serving location (rooftop)
      description: Push a funeral-home serving location (rooftop). The Id is your application's unique identifier for the location; posting a previously used Id updates the existing record, a new Id creates one. Returns the Tribute Store SERVING_LOCATION_ID on success.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalLocation'
      responses:
        '200':
          description: The Tribute Store serving location identifier.
          content:
            application/json:
              schema:
                type: integer
                description: SERVING_LOCATION_ID
        '400':
          description: Error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Message'
  /api/locations/{servingLocationId}:
    get:
      operationId: getLocation
      tags:
      - Serving Locations
      summary: Get a serving location
      description: Retrieve the current information stored about a serving location by its Tribute Store SERVING_LOCATION_ID. ShowOnWebSite corresponds to CouldServeObituary on the POST.
      parameters:
      - name: servingLocationId
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: The serving location record.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Location'
  /api/locations/:
    get:
      operationId: listLocations
      tags:
      - Serving Locations
      summary: List all serving locations
      description: Return a JSON array of all serving locations for the authenticated funeral home. Not recommended for the demo user.
      responses:
        '200':
          description: Array of serving locations.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Location'
  /api/locations/getlocationtypes:
    get:
      operationId: getLocationTypes
      tags:
      - Serving Locations
      summary: List location types
      description: Return the predefined location type values.
      responses:
        '200':
          description: Array of location types.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/LocationType'
              example:
              - Id: 1
                Name: Cemetery
              - Id: 2
                Name: Church
              - Id: 3
                Name: Funeral Home
              - Id: 4
                Name: Memorial
components:
  schemas:
    Location:
      type: object
      properties:
        Id:
          type: integer
        LocationTypeId:
          type: integer
          description: 3 for Funeral Home.
        Name:
          type: string
        AddressId:
          type: integer
        WebSite:
          type: string
        Email:
          type: string
        ShowOnWebSite:
          type: boolean
          description: Equivalent to CouldServeObituary on the POST.
        Address1:
          type: string
        Address2:
          type: string
        City:
          type: string
        State:
          type: string
        PostalCode:
          type: string
        Country:
          type: string
    LocationType:
      type: object
      properties:
        Id:
          type: integer
        Name:
          type: string
    ExternalLocation:
      type: object
      required:
      - Id
      - LocationType
      - Name
      properties:
        Id:
          type: string
          description: Unique identifier of this location from your application.
        LocationType:
          type: string
          enum:
          - Cemetery
          - Church
          - Funeral Home
          - Memorial
          - Other
          description: Should always be "Funeral Home" for obituary attachment.
        Name:
          type: string
          description: Funeral home company/branch name.
        Address1:
          type: string
        Address2:
          type: string
        City:
          type: string
        State:
          type: string
          description: Two-letter abbreviation.
        Country:
          type: string
          enum:
          - US
          - CA
        Phone:
          type: string
        PostalCode:
          type: string
          description: US ZIP or Canadian postal code.
        WebSite:
          type: string
        Email:
          type: string
        Fax:
          type: string
        CouldServeObituary:
          type: boolean
          description: Whether obituaries will be attached. Should be true.
    Message:
      type: object
      properties:
        Message:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'HTML bearer token obtained from POST /token/. Include as Authorization: Bearer {TOKEN}.'