With default settings you can access parserserver via 4334 port using a
socket client library of your programming language. You can find
socket client script example in the examples directory of the gem.

Returned result is not always linear, if name is complex. To get simple linear
representation of the name you can use:

parser.parse("Pseudocercospora dendrobii (H.C. Burnett) \U. Braun & Crous 2003")[:scientificName][:position]
# returns {0=>["genus", 16], 17=>["species", 26],# 28=>["author_word", 32], 33=>["author_word", 40],# 42=>["author_word", 44], 45=>["author_word", 50],# 53=>["author_word", 58], 59=>["year", 63]}# where the key is the char index of the start of# a word, first element of the value is a semantic meaning# of the word, second element of the value is the character index# of end of the word

'Surrogate' is a broad group which includes 'Barcode of Life' names, and various
undetermined names with cf. sp. spp. nr. in them:

parser.parse("Coleoptera BOLD:1234567")[:scientificName][:surrogate]

What is "id" in the parsed results?

ID field contains UUID v5 hexadecimal string. ID is generated out of bytes
from the name string itself, and identical id can be generated using any
popular programming language. You can read more about UUID
version 5 in a blog post