REST API Reference

Introduction

This document describes the resources that make up the official Yonyx API v1.
The API base URL is https://developer.yonyx.com/y/apiv1/
If you have any problems or requests please contact us.

API key and API secret

After you sign up with Yonyx, you can retrieve the API key and API secret from the Security page. The API keys provide full access to the Yonyx resources owned by your account.

The following is an example of API key and API secret:

API Key (a 36-character, alphanumeric string). E.g.: f4389790-33ba-11e3-9459-bc764e10f0e8.
API Secret (a 45-character string). E.g.: SGtuFbwOlsQTOlGuWZe2li4KvWh8y0XXvBbAZxbwL+Y= 

Your API Key identifies you as the party responsible for service requests. You include it in each request, so it’s not a secret.

Each API Key has an API Secret associated with it. This key is just a long string of characters that you use to calculate the digital signature that you include in the request.

Your API Secret is a secret, and only you and Yonyx should have it. Don’t e-mail it to anyone or include it in Yonyx requests. No authorized person from Yonyx will ever ask for your API Secret.

When you create a request, you create a digital signature with your API Secret and include it in the request along with your API Key. When we get the request, we use your API Key to look up the corresponding API Secret. We use the API Secret key to validate the signature and confirm that you’re the request sender.

Signing and Authenticating API Requests

Yonyx API uses a custom HTTP scheme based on a keyed-HMAC (Hash Message Authentication Code) for authentication. To authenticate a request, you first concatenate parameters of the request sorted by parameter name to form a string. You then use your Yonxy API secret to calculate the HMAC of that string. The output of the HMAC algorithm is called the signature. Finally, you add this signature as a parameter of the request by using the syntax described below.

Let’s say you want to retrieve a list of all guides containing keywords.
Step 1: Construct the request URL:

[Base URL]  https://developer.yonyx.com/y/apiv1/ 
[Parameter 1]  ?key={API Key} 
[Parameter 2]  &lobid=cxxx8fae-4xx7-4exx-xxa5-96xxadxx6xx1  
[Parameter 3]  &object=guides  
[Parameter 4]  &keyword=keyword1+keyword2+keyword3  
[Parameter 5]  &offset=5  
[Parameter 6]  &expires=1141889120 

Step 2: Create String-to-Sign by sorting the parameters in the request lexicographically by parameter name:

String-to-Sign before sorting:

[Parameter 1]  ?key={API Key} 
[Parameter 2]  &lobid=cxxx8fae-4xx7-4exx-xxa5-96xxadxx6xx1  
[Parameter 3]  &object=guides  
[Parameter 4]  &keyword=keyword1+keyword2+keyword3  
[Parameter 5]  &offset=5  
[Parameter 6]  &expires=1141889120 
String-to-Sign after sorting:

[Parameter 1]  ?expires=1141889120 
[Parameter 2]  &key={API Key} 
[Parameter 3]  &keyword=keyword1+keyword2+keyword3  
[Parameter 4]  &lobid=cxxx8fae-4xx7-4exx-xxa5-96xxadxx6xx1  
[Parameter 5]  &object=guides  
[Parameter 6]  &offset=5  

Step 3: Sign String-to-Sign:

Line breaks were added for readability.  Actual String-to-Sign should be a continuous string. 
E.g.: ?expires=1141889120&key={API Key}&keyword=keyword1+keyword2+keyword3&lobid=cxxx8fae-4xx7-4exx-xxa5-96xxadxx6xx1&object=guides&offset=5 signature = URL-Encode( Base64( HMAC-SHA256( String-to-Sign ) ) );

Step 4: Add Signature as a parameter to the request:

[Base URL]  https://developer.yonyx.com/y/apiv1/ 
[Parameter 1]  ?key={API Key} 
[Parameter 2]  &lobid=cxxx8fae-4xx7-4exx-xxa5-96xxadxx6xx1  
[Parameter 3]  &object=guides  
[Parameter 4]  &keyword=keyword1+keyword2+keyword3  
[Parameter 5]  &offset=5  
[Parameter 6]  &expires=1141889120 
[Parameter 7]  &signature=E1PdLzqDVjtahJu4yqvfZPZP%2Bbocfs16QwdXqgOpVpU%3D

When the system receives an authenticated request, it fetches the Yonyx API secret that you claim to have and uses it in the same way to compute a signature for the message it received. It then compares the signature it computed against the signature provided by you. If the two signatures match, the system concludes that you must have access to the API secret. If the two signatures do not match, the request is dropped and the system responds with an error message.

All API requests must be made over HTTPS. You must authenticate for all requests. The API key is used for identity and usage tracking purposes. You will have to pass the API key in your API call. It is required that you pass a valid and active API key. The API will return a 401 Unauthorized Http status if the API key is invalid.

Rate Limiting

Rate limits are divided into 15 minute intervals. You will be allowed to make 1000 calls every 15 minutes. We limit API requests to a reasonable number in order to ensure that one customer’s use of Yonyx API does not adversely affect other customers. Without rate limiting, one customer could flood our system with requests in a way that would prevent another customer from being able to use the system. This happens sometimes when customers are first working with an API – a simple programming error could flood the API with requests that the customer doesn’t mean to send.

If you hit the rate limit, this is the body of the HTTP 429 (Too Many Requests) message that you will see. When you see this response, just retry your request after couple minutes.

{
  "error": [
    {
      "code": 10006,
      "message": "Error Code: 10006 - Sorry, you've exceeded your limit of {x} requests in the last 15 minutes."
    }
  ] 
}

Supported object types

Yonyx API supports these object types:

OBJECT TYPES
lobs
catalogs
guides
guidance_family
notifications
transcript
transcripts_by_refid
associate_refid_with_transcript

Retrieve an existing line of business

Retrieves the details of an existing line of business (lob). You need to only supply the unique lob identifier.

PARAMETERS
key: (Required) Your API key.
object: (Required) The object type to be retrieved.
id: (Required) The identifier of the lob to be retrieved.
signature: (Required) The URL encoding of the Base64 encoding of the HMAC-SHA256 of String-to-Sign.
expires: (Required) The time when the signature expires, specified as the number of milliseconds since the epoch 
(00:00:00 UTC on January 1, 1970). A request received after this time (according to the server) will be rejected. EXAMPLE REQUEST $ curl https://developer.yonyx.com/y/apiv1/?key=YOUR-API-KEY&object=lobs&id={LOB_ID}&expires={expires}&signature={signature} EXAMPLE RESPONSE Returns an lob object if a valid identifier was provided. { "object":"lob", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Self Service" }

List all lines of business

Returns a list of your lines of business. The lobs are returned sorted by creation date, with the most recently created lob appearing first.

PARAMETERS
key: (Required) Your API key.
object: (Required) The object type to be retrieved.
signature: (Required) The URL encoding of the Base64 encoding of the HMAC-SHA256 of String-to-Sign.
expires: (Required) The time when the signature expires, specified as the number of milliseconds since the epoch 
(00:00:00 UTC on January 1, 1970). A request received after this time (according to the server) will be rejected. EXAMPLE REQUEST $ curl https://developer.yonyx.com/y/apiv1/?key=YOUR-API-KEY&object=lobs&expires={expires}&signature={signature} EXAMPLE RESPONSE Returns a dictionary with a data property that contains an array of lobs. Each entry in the array is a separate lob object. If no lobs are available, the resulting array will be empty. This request should never return an error. { "object":"list", "count":3, "data":[ { "object":"lob", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Self Service" }, { "object":"lob", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Customer Service" }, {...} ] }

Retrieve an existing catalog

Retrieves the details of an existing catalog. You need to only supply the unique catalog identifier.

PARAMETERS
key: (Required) Your API key.
object: (Required) The object type to be retrieved.
id: (Required) The identifier of the catalog to be retrieved.
signature: (Required) The URL encoding of the Base64 encoding of the HMAC-SHA256 of String-to-Sign.
expires: (Required) The time when the signature expires, specified as the number of milliseconds since the epoch 
(00:00:00 UTC on January 1, 1970). A request received after this time (according to the server) will be rejected. EXAMPLE REQUEST $ curl https://developer.yonyx.com/y/apiv1/?key=YOUR-API-KEY&object=catalogs&id={CATALOG_ID}&expires={expires}&signature={signature} EXAMPLE RESPONSE Returns a catalog object if a valid identifier was provided. { "object":"catalog", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Fix an Issue with Inkjet Printer", "guides":{ "object":"list", "count":5, "data":[ { "object":"guide", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Computer Cannot Find Printer or Will not Print" }, { "object":"guide", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Print Head Errors on Inkjet Printers" }, {...}, {...}, {...}, ] } }

List all catalogs

Returns a list of catalogs belonging to a particular line of business. The catalogs are returned sorted by creation date, with the most recently created catalog appearing first.

PARAMETERS
key: (Required) Your API key.
lobid: (Required) Line of business ID.
object: (Required) The object type to be retrieved.
signature: (Required) The URL encoding of the Base64 encoding of the HMAC-SHA256 of String-to-Sign.
expires: (Required) The time when the signature expires, specified as the number of milliseconds since the epoch 
(00:00:00 UTC on January 1, 1970). A request received after this time (according to the server) will be rejected. EXAMPLE REQUEST $ curl https://developer.yonyx.com/y/apiv1/?key=YOUR-API-KEY&lobid={LOB_ID}&object=catalogs&expires={expires}&signature={signature} EXAMPLE RESPONSE Returns a dictionary with a data property that contains an array of catalogs. Each entry in the array is a separate catalog object. If no catalogs are available, the resulting array will be empty. This request should never return an error. { "object":"list", "count":3, "data":[ { "object":"catalog", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Fix an Issue with Inkjet Printer", "guides":{ "object":"list", "count":8, "data":[ { "object":"guide", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Computer Cannot Find Printer or Will not Print" }, { "object":"guide", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Print Head Errors on Inkjet Printers" }, {...}, {...}, {...} ] } }, { "object":"catalog", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Customer Interactive HelpDesk", "guides":{ "object":"list", "count":8, "data":[ { "object":"guide", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Having Print Quality issues" }, { "object":"guide", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Wireless Scanning issues" }, {...}, {...}, {...} ] } }, {...} ] }

List all guides containing keyword

Returns a list of yonyx guidance steps matching the provided keyword(s). A max of 20 objects will be returned starting at index offset if provided.

PARAMETERS
key: (Required) Your API key.
lobid: (Required) Line of business ID.
object: (Required) The object type to be retrieved.
keyword: (Required) Keywords that will be used to match.
offset: (Optional) Default is 0. An offset into the list of returned items. The API will return the number of items starting at that offset.
signature: (Required) The URL encoding of the Base64 encoding of the HMAC-SHA256 of String-to-Sign.
expires: (Required) The time when the signature expires, specified as the number of milliseconds since the epoch 
(00:00:00 UTC on January 1, 1970). A request received after this time (according to the server) will be rejected. EXAMPLE REQUEST $ curl https://developer.yonyx.com/y/apiv1/?key=YOUR-API-KEY&lobid={LOB_ID}&object=guides&keyword={KEYWORDS}&offset=5&expires={expires}&signature={signature} EXAMPLE RESPONSE Returns a dictionary with a data property that contains an array of guides, starting at index offset. Each entry in the array is a separate guide object. If no guides are available, the resulting array will be empty. This request should never return an error. { "object":"list", "count":20, "next_offset":26, "data":[ { "object":"guide", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Print Head Errors on Inkjet u003cemu003ePrintersu003c/emu003e", "match_fragment":"You see an error message on your u003cemu003ePrinteru003c/emu003eu0027s LCD panel. This message is typically related to either the Print head or the Cartridge. Let us guide you interactively to help resolve the u003cemu003eissueu003c/emu003e you are facing. ... What model u003cemu003eprinteru003c/emu003e do you need help with?" }, { "object":"guide", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"u003cemu003ePrinteru003c/emu003e is Printing Banner Page on every given Print Job", "match_fragment":"This u003cemu003eissueu003c/emu003e is noticed if the banner Page option is selected in EWS (Embedded Web Server). To resolve this Problem: Go to EWS page using the u003cemu003eprinteru003c/emu003e IP address and then Go to Settings -u003e General Settings -u003e General Active Card Settings -u003e Uncheck Banner Page and Submit Selection. ... Was the u003cemu003eissueu003c/emu003e resolved ?" }, {...}, {...}, {...} ] }

List all guides

Returns a list of root guidance steps (start point of an interactive guidance flow) belonging to a particular line of business. A max of 20 objects will be returned starting at index offset if provided.

PARAMETERS
key: (Required) Your API key.
lobid: (Required) Line of business ID.
object: (Required) The object type to be retrieved.
offset: (Optional) Default is 0. An offset into the list of returned items. The API will return the number of items starting at that offset.
signature: (Required) The URL encoding of the Base64 encoding of the HMAC-SHA256 of String-to-Sign.
expires: (Required) The time when the signature expires, specified as the number of milliseconds since the epoch 
(00:00:00 UTC on January 1, 1970). A request received after this time (according to the server) will be rejected. EXAMPLE REQUEST $ curl https://developer.yonyx.com/y/apiv1/?key=YOUR-API-KEY&lobid={LOB_ID}&object=guides&offset=5&expires={expires}&signature={signature} EXAMPLE RESPONSE Returns a dictionary with a data property that contains an array of guides, starting at index offset. Each entry in the array is a separate guide object. If no guides are available, the resulting array will be empty. This request should never return an error. { "object":"list", "count":20, "next_offset":26, "data":[ { "object":"guide", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Handling "Windows Update Failed" Error Msg.", "match_fragment":"" }, { "object":"guide", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"I need help for resolving Internet accessibility issue", "match_fragment":"" }, {...}, {...}, {...} ] }

Retrieve an existing guidance family

Retrieves the details of an existing guidance step.

PARAMETERS
key: (Required) Your API key.
object: (Required) The object type to be retrieved.
id: (Required) The identifier of the guidance step to be retrieved.
signature: (Required) The URL encoding of the Base64 encoding of the HMAC-SHA256 of String-to-Sign.
expires: (Required) The time when the signature expires, specified as the number of milliseconds since the epoch 
(00:00:00 UTC on January 1, 1970). A request received after this time (according to the server) will be rejected. EXAMPLE REQUEST $ curl https://developer.yonyx.com/y/apiv1/?key=YOUR-API-KEY&object=guidance_family&id={YONYX_ID}&expires={expires}&signature={signature} EXAMPLE RESPONSE Returns a guidance family object if a valid identifier was provided. { "object":"guidance_family", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Computer Cannot Find Printer or Will not Print", "body":"u003cpu003eThese steps will help you resolve communication issues between your computer and your All-in-One inkjet printer.u003c/pu003e", "inquiry":"How is your computer connected to your printer?", "user_responses":{ "object":"list", "count":3, "data":[ { "object":"user_response", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "body":"Wired via USB", "next_guidance_family":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }, { "object":"user_response", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "body":"Wireless", "next_guidance_family":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }, { "object":"user_response", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "body":"I need help connecting to a wireless network", "next_guidance_family":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" } ] } }

List notifications

Returns a list of notifications. The notifications are returned sorted by creation date, with most recently created notification appearing first.

PARAMETERS
key: (Required) Your API key.
object: (Required) The object type to be retrieved.
offset: (Optional) An offset into the list of returned items. The API will return the number of items starting at that offset.
signature: (Required) The URL encoding of the Base64 encoding of the HMAC-SHA256 of String-to-Sign.
expires: (Required) The time when the signature expires, specified as the number of milliseconds since the epoch 
(00:00:00 UTC on January 1, 1970). A request received after this time (according to the server) will be rejected. EXAMPLE REQUEST $ curl https://developer.yonyx.com/y/apiv1/?key=YOUR-API-KEY&object=notifications&offset=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&expires={expires}&signature={signature} EXAMPLE RESPONSE Returns a dictionary with a data property that contains an array of notifications. Each entry in the array is a separate notification object. If no notifications are available, the resulting array will be empty. This request should never return an error. { "object":"list", "count":3, "data":[ { "object":"notification", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Important enhancement to the guide titled 'Battery Issues' released", "body":"The guide now handles issues related to Battery problems in Android phones that are running Kitkat." }, { "object":"notification", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"A New Yonyx interactive guide focused on 'Home Appliance Issues' is being developed", "body":"I expect it to be published next Monday! Thank you so much for all your feedback and your patience as we work hard to crank it out." }, {...}, {...}, {...} ] }

Retrieve an existing Transcript

Retrieves the details of an existing transcript. You need to only supply the unique Transcript Id.

PARAMETERS
key: (Required) Your API key.
object: (Required) The object type to be retrieved.
id: (Required) The identifier of the Transcript to be retrieved.
signature: (Required) The URL encoding of the Base64 encoding of the HMAC-SHA256 of String-to-Sign.
expires: (Required) The time when the signature expires, specified as the number of milliseconds since the epoch 
(00:00:00 UTC on January 1, 1970). A request received after this time (according to the server) will be rejected. EXAMPLE REQUEST $ curl https://developer.yonyx.com/y/apiv1/?key=YOUR-API-KEY&object=transcript&id={TRANSCRIPT_ID}&expires={expires}&signature={signature} EXAMPLE RESPONSE Returns a Transcript object if a valid identifier was provided. { "object":"transcript", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "url":"https://subdomain.yonyx.com/y/incident/?didu003dxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "steps":{ "object":"list", "count":5, "data":[ { "object":"transcript_step", "type":"guidance_step", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"My TV Doesnu0027t work", "question":"Is your TV plugged into the wall socket?", "duration":"00:00:06" }, { "object":"transcript_step", "type":"user_response", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"No it is not." }, { "object":"transcript_step", "type":"guidance_step", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Plug it in", "question":"Do you now see the red light come on?", "duration":"00:18:55" }, { "object":"transcript_step", "type":"user_response", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"No it is not." }, { "object":"transcript_step", "type":"guidance_step", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Plug it in", "question":"Do you now see the red light come on?", "duration":"00:00:02" } ] }, "summary":"n============================================nTRANSCRIPT SUMMARY: nT = Title, Q = Question, U = User Responsen============================================nT: [00:00:06] My TV Doesnu0027t worknQ: Is your TV plugged into the wall socket?n--------------------------------------------nU: No it is not.n--------------------------------------------nT: [00:18:55] Plug it innQ: Do you now see the red light come on?n--------------------------------------------nU: No it is not.n--------------------------------------------nT: [00:00:02] Plug it innQ: Do you now see the red light come on?n--------------------------------------------" }

List all Transcripts associated with a Reference Id

Returns a list of all Transcripts associated with the Reference Id provided. The Transcripts are returned sorted by creation date, with the most recently created Transcript appearing first.

PARAMETERS
key: (Required) Your API key.
object: (Required) The object type to be retrieved.
rid: (Required) The Reference Id, typically your CRM or Service Desk incident Id.
signature: (Required) The URL encoding of the Base64 encoding of the HMAC-SHA256 of String-to-Sign.
expires: (Required) The time when the signature expires, specified as the number of milliseconds since the epoch 
(00:00:00 UTC on January 1, 1970). A request received after this time (according to the server) will be rejected. EXAMPLE REQUEST $ curl https://developer.yonyx.com/y/apiv1/?key=YOUR-API-KEY&object=transcripts_by_refid&expires={expires}&signature={signature} EXAMPLE RESPONSE Returns a dictionary with a data property that contains an array of Transcripts. Each entry in the array is a separate Transcript object. If no Transcripts are available, the resulting array will be empty. { "object":"list", "count":2, "data":[ { "object":"transcript", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "referenceId":"xxxxxxxx", "url":"https://subdomain.yonyx.com/y/incident/?didu003dxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "steps":{ "object":"list", "count":3, "data":[ { "object":"transcript_step", "type":"guidance_step", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"My TV Doesnu0027t work", "question":"Is your TV plugged into the wall socket?", "duration":"00:00:06" }, { "object":"transcript_step", "type":"user_response", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"No it is not." }, { "object":"transcript_step", "type":"guidance_step", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Plug it in", "question":"Do you now see the red light come on?", "duration":"00:18:55" } ] }, "summary":"n============================================nTRANSCRIPT SUMMARY: nT = Title, Q = Question, U = User Responsen============================================nT: [00:00:06] My TV Doesnu0027t worknQ: Is your TV plugged into the wall socket?n--------------------------------------------nU: No it is not.n--------------------------------------------nT: [00:18:55] Plug it innQ: Do you now see the red light come on?n--------------------------------------------" }, { "object":"transcript", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "referenceId":"xxxxxxxx", "url":"https://subdomain.yonyx.com/y/incident/?didu003dxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "steps":{ "object":"list", "count":5, "data":[ { "object":"transcript_step", "type":"guidance_step", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"My TV Doesnu0027t work", "question":"Is your TV plugged into the wall socket?", "duration":"00:00:06" }, { "object":"transcript_step", "type":"user_response", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"No it is not." }, { "object":"transcript_step", "type":"guidance_step", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Plug it in", "question":"Do you now see the red light come on?", "duration":"00:18:55" }, { "object":"transcript_step", "type":"user_response", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"No it is not." }, { "object":"transcript_step", "type":"guidance_step", "id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "title":"Plug it in", "question":"Do you now see the red light come on?", "duration":"00:00:02" } ] }, "summary":"n============================================nTRANSCRIPT SUMMARY: nT = Title, Q = Question, U = User Responsen============================================nT: [00:00:06] My TV Doesnu0027t worknQ: Is your TV plugged into the wall socket?n--------------------------------------------nU: No it is not.n--------------------------------------------nT: [00:18:55] Plug it innQ: Do you now see the red light come on?n--------------------------------------------nU: No it is not.n--------------------------------------------nT: [00:00:02] Plug it innQ: Do you now see the red light come on?n--------------------------------------------" } ] }

Associate Reference Id with Transcript

Associates Reference ID (typically your CRM or Service Desk incident Id) with an existing Transcript.

PARAMETERS
key: (Required) Your API key.
object: (Required) The object type to be retrieved.
rid: (Required) The Reference Id, typically your CRM or Service Desk incident Id.
id: (Required) The Transcript Id. This is Yonyx incident Id.
signature: (Required) The URL encoding of the Base64 encoding of the HMAC-SHA256 of String-to-Sign.
expires: (Required) The time when the signature expires, specified as the number of milliseconds since the epoch 
(00:00:00 UTC on January 1, 1970). A request received after this time (according to the server) will be rejected. EXAMPLE REQUEST $ curl https://developer.yonyx.com/y/apiv1/?key=YOUR-API-KEY&object=associate_refid_with_transcript&expires={expires}&signature={signature} EXAMPLE RESPONSE Returns a success message. { "message":"Reference ID associated with Transcript successfully." }

Errors

Yonyx API uses conventional HTTP response codes to indicate success or failure of an API request. In general, codes in the 2xx range indicate success, codes in the 4xx range indicate an error that resulted from the provided information (e.g. a required parameter was missing, etc.), and codes in the 5xx range indicate an error with Yonyx API servers..

HTTP STATUS CODE SUMMARY
200 OK - Everything worked as expected.
400 Bad Request - Often missing a required parameter.
401 Unauthorized - No valid API key was provided.
402 Request Failed - Parameters were valid but request failed.
404 Not Found - The requested item doesn't exist.
500, 502, 503, 504 Server errors - something went wrong on Yonyx API end.

Sign Up for a 30-day Free-Trial

Share this article

Back to top