Naming Conventions

When developing service with Avid Connector API, you have to follow naming conventions. Here are the rules:

Service Types

  • low-case ony character must be used
  • different words must be separated with "." (dot)
  • first word(s) must stand for company or developer of the service
  • middle word(s) must stand for sub-category of the service
  • last word must stand for functionality or purpose of the service
  • don't use "service" word to say that this is service, as it is service anyway and can't be anything else
  • don't use symbols, just letters and numbers
  • each word must start with letter

Examples of good service type names:

  • avid.acs.alert
  • avid.acs.attributes
  • avid.acs.registry
  • avid.acs.service.manager (service.manager here stands for functionality/purpose of the service)
  • avid.acs.net45.calculator

Examples of bad service type names:

  • acs.registry (company or developer not provided)
  • avid.registry (sub-category of the service not provided)
  • avid.registry.service (word service is used to say this is service, which is redundant)
  • Avid.Net.#Calculator (capital letters are used)
  • avid.45net.calculator (second word starts with numbers)

Realms

  • low-case ony character must be used
  • different words must be separated with "." (dot)
  • don't use "realm" word to say that this is realm, as it is realm anyway and can't be anything else
  • don't use symbols, just letters and numbers
  • each word must start with letter

Examples of good realm names:

  • global
  • avid.test
  • avid.stage
  • avid.mcs210

Examples of bad service type names:

  • Avid.Global (capital letters are used)
  • avid.210ics (second word starts with numbers)

Channel Names

  • low-case ony character must be used
  • channel name must describe general purpose of the channel and/or type of messages going through it
  • different words must be separated with "." (dot)
  • don't use "channel" word to say that this is channel, as it is channel anyway and can't be anything else
  • don't use symbols, just letters and numbers
  • each word must start with letter

Examples of good realm names:

  • avid.bus.updates
  • avid.youtube.notifications
  • avid.assets.updates

Examples of bad service type names:

  • Avid.Bus.Updates (capital letters are used)
  • avid.210ics.notifications (second word starts with numbers)
  • avid.youtube.notifications.video.added (channel name is to specific, coupled to action, action must be provided as a channel subject)

Channel Subjects

  • any characters may be used
  • channel subject must describe information provided over the given channel or what action was performed
  • different words must be separated with "." (dot)
  • don't use "subject" word to say that this is subject, as it is subject anyway and can't be anything else
  • if one of the words is free style characters set (for example id, hash or something else), preceding words should explain what is this or what action was done

Examples of good realm names:

  • deleted
  • deleted.a532c722-0384-11e7-93ae-92361f002671
  • logs
  • logs.info

Examples of bad service type names:

  • subject.deleted (don't use word subject to say that this is subject)
  • deletedasseta532c722-0384-11e7-93ae-92361f002671 (everything is provided as one word)

Service Operations

  • lower camel case must be used
  • don't use symbols, just letters and numbers

JSON Field Names

  • lower camel case recommended