Loading

FranConnect API v1 Explorer

Overview

This RESTful API allows for third-party integrations with FranConnect. All interactions must be made over HTTPS in order to avoid leaking sensitive information over the Internet.

A special HTTP header named Authorization-Token must be included with each request for authentication purposes. You must use a valid pair of username and password to generate such an authorization token, as described in the Login section below.

The API as a whole adheres to the standard conventions of REST. That is, for each HTTP request made to the API, the verb (e.g. GET, PUT or POST) describes the action to be performed, while the URI specifies to which resource the action should be performed; GET is used to retrieve data, PUT to update, and POST to create. HTTP responses will be formatted as either JSON, XML, or Atom, based on the value of the Accept HTTP header:

Format Accept Header
JSON (default)application/json;charset=utf-8
XMLapplication/xml;charset=utf-8
Atomapplication/atom+xml;charset=utf-8

Each section below roughly maps to a data type, and generally includes a synopsis, a sample response, some tips and tricks, as well as a detailed list of all the supported methods. We highly recommend you use this explorer to familiarize yourself with the API.

Try It Yourself

To use the API Explorer, log in with the username and password that was provided to you from the one method of the Login section. The Authentication Token textbox should then fill up with your encrypted authentication token, allowing you to access the rest of the API methods as an authorized user. Enjoy!

Authentication Token:

GET api/v1/Login

Generates an authentication token from a pair username and password. This authentication token represents your identity. It is tied to your FranchiseBlast user, has to be renewed every 15 days, and cannot be used from any other IP address. To use any other part of the API, you need to include the HTTP Header Authorization-Token with the value of that token.
GET api/v1/Login?username={username}&password={password}
  • {username} - Your FranchiseBlast login
  • {password} - Your FranchiseBlast password
Returns: An authentication token to use with all other API calls.

GET api/v1/AuditQuestionnaires

Returns a list of audit questionnaires.
GET api/v1/AuditQuestionnaires?search={search}&franchiseGuid={franchiseGuid}&status={status}&offset={offset}&limit={limit}
  • {search} - Filter with search terms
  • {franchiseGuid} - Filter by franchise store group GUID.
  • {status} - Filter by questionnaire status (All, Archived, CurrentActive, CurrentInactive, or Non-Archived, the default).
  • {offset} - Skip the first X elements of the list
  • {limit} - Total records to get back, default 100, maximum 1000. Use api/v1/{Controller}/count to get the total number of items
Returns: A list of AuditQuestionnaire objects.

GET api/v1/AuditQuestionnaires/GetOne

Returns a single AuditQuestionnaire based on the supplied QuestionnaireGUID.
GET api/v1/AuditQuestionnaires/GetOne?id={id}
  • {id} - The QuestionnaireGUID of the AuditQuestionnaire to fetch
Returns: A single AuditQuestionnaire, or HTTP code 404 (Not Found) if no AuditQuestionnaire were found.

GET api/v1/Audits

Returns a list of store audits. NOTE: The DateLastModified field is obsolete. It will be removed from future versions of the API. You should use LastModifiedDate instead.
GET api/v1/Audits?search={search}&franchiseGuid={franchiseGuid}&storeGroupGuid={storeGroupGuid}&storeId={storeId}&from={from}&to={to}&status={status}&auditor={auditor}&questionnaireGuid={questionnaireGuid}&isSelfAssessment={isSelfAssessment}&offset={offset}&limit={limit}
  • {search} - Filter with search terms
  • {franchiseGuid} - Filter audits by franchise GUID
  • {storeGroupGuid} - Filter audits by store group GUID
  • {storeId} - Filter audits by StoreID
  • {from} - Return audits that were performed from this date on. Format as YYYY-MM-DD.
  • {to} - Return audits that were performed on, or before the specified date. Format as YYYY-MM-DD.
  • {status} - Filter audits by status (Planned, InProgress, Completed, Approved, Refused or Cancelled). Cancelled audits are only returned when specifically searching with this parameter.
  • {auditor} - Filter audits by auditor name
  • {questionnaireGuid} - Filter audits by questionnaire GUID
  • {isSelfAssessment} - Filter audits by nature; if true, will return self-asessments only. If false, will return normal audits. If left blank, returns both.
  • {offset} - Skip the first X elements of the list
  • {limit} - Total records to get back, default 100, maximum 1000. Use api/v1/{Controller}/count to get the total number of items
Returns: A list of StoreAudit objects.

GET api/v1/Audits/Count

Returns total count of StoreAudit corresponding to the applied filters.
GET api/v1/Audits/Count?search={search}&franchiseGuid={franchiseGuid}&storeGroupGuid={storeGroupGuid}&storeId={storeId}&from={from}&to={to}&status={status}&auditor={auditor}&questionnaireGuid={questionnaireGuid}
  • {search} - Filter with search terms
  • {franchiseGuid} - Filter audits by franchise GUID
  • {storeGroupGuid} - Filter audits by store group GUID
  • {storeId} - Filter audits by StoreID
  • {from} - Return audits that were performed from this date on. Format as YYYY-MM-DD.
  • {to} - Return audits that were performed on, or before the specified date. Format as YYYY-MM-DD.
  • {status} - Filter audits by status (Planned, InProgress, Completed, Approved, or Refused)
  • {auditor} - Filter audits by auditor name
  • {questionnaireGuid} - Filter audits by SurveyDefinitionGUID (questionnaire GUID)
Returns: Total count of StoreAudit corresponding to the applied filters

GET api/v1/Audits/GetOne

Returns a single StoreAudit based on the supplied StoreAuditGUID.
GET api/v1/Audits/GetOne?id={id}&includeAnswers={includeAnswers}
  • {id} - The StoreAuditGUID of the StoreAudit to fetch
  • {includeAnswers} - Whether to include all the answers of that audit. (defaults to false)
Returns: A single StoreAudit or HTTP code 404 (Not Found) if no StoreAudit were found.

GET api/v1/StoreGroups

Returns a list of store groups. In FranchiseBlast, a franchise is a store group like any other, with the exception of its IsFranchise attribute being set to true. To list all the store groups which are part of a franchise, simply search for store groups with the franchiseGuid parameter set to the store group GUID of that franchise.
GET api/v1/StoreGroups?search={search}&franchiseGuid={franchiseGuid}&dimension={dimension}&isFranchise={isFranchise}&offset={offset}&limit={limit}
  • {search} - Filter with search terms
  • {franchiseGuid} - Only return store groups that are related to a particular franchise.
  • {dimension} - Filter by store group dimension (e.g. Region, Type, Season, Operator, etc.)
  • {isFranchise} - Whether to return franchises (true), regular store groups (false), or both (null, the default)
  • {offset} - Skip the first X elements of the list
  • {limit} - Total records to get back, default 100, maximum 1000. Use api/v1/{Controller}/count to get the total number of items
Returns: A list of StoreGroup objects.

GET api/v1/StoreGroups/GetOne

Returns a single StoreGroup based on the supplied StoreGroupGUID.
GET api/v1/StoreGroups/GetOne?id={id}
  • {id} - The StoreGroupGUID of the StoreGroup to fetch
Returns: A single StoreGroup, or HTTP code 404 (Not Found) if no StoreGroup were found.

GET api/v1/Stores

Returns a list of Store.
GET api/v1/Stores?search={search}&modifiedSince={modifiedSince}&storeGroupGuid={storeGroupGuid}&includeHidden={includeHidden}&type={type}&offset={offset}&limit={limit}
  • {search} - Filter with search terms
  • {modifiedSince} - Filter results to return only records which were modified after the specified date.
  • {storeGroupGuid} - Filter results by store group GUID.
  • {includeHidden} - Include hidden stores or not. Can either be true of false.
  • {type} - Include only certain type of store. Can either be POS, WEB, WH. POS: Point of sale. WEB: Website. WH: Warehouse.
  • {offset} - Skip the first X elements of the list
  • {limit} - Total records to get back, default 100, maximum 1000. See api/v1/{Controller}/count to get the total number of items
Returns: A list of Store.

GET api/v1/Stores/Count

Returns total count of Store corresponding to the applied filters.
GET api/v1/Stores/Count?search={search}&modifiedSince={modifiedSince}&storeGroupGuid={storeGroupGuid}&includeHidden={includeHidden}&type={type}
  • {search} - Filter with search terms
  • {modifiedSince} - Filter results to return only records which were modified after the specified date.
  • {storeGroupGuid} - Filter results by store group GUID.
  • {includeHidden} - Include hidden stores or not. Can either be true of false.
  • {type} - Include only certain type of store. Can either be POS, WEB, WH. POS: Point of sale. WEB: Website. WH: Warehouse.
Returns: Total count of Store corresponding to the applied filters

GET api/v1/Stores/GetOne

Returns a single Store from the supplied StoreID
GET api/v1/Stores/GetOne?id={id}
  • {id} - The StoreID of the Store to fetch
Returns: A single Store or HTTP code 404 (Not Found) if no Store were found.