Selectors: Add a Selector

Collapse All

URL

http://api.fonts.com/rest/{format}/Selectors/

{format}

xml or json

Method

POST

Required Header Parameters

  • authorizationHashed authorization key
  • appkeyYour application’s key

Required Query String Parameters

  • wfspidThe project id

Optional Query String Parameters

  • wfsnopublishThis command automatically calls Publish once it is complete, which takes multiple seconds. To prevent this, use this parameter, set it to 1, and use Publish after all changes are made.
  • wfspstartstarting record requested (zero-based)
  • wfsplimit# of records requested

Required Data Parameters

  • wfsselector_tagThe selector string

Response variables

  • MessageIf the response is successful then the “message” parameter of the response will be “Success” and if there is some error or failure then the “message” parameter will be the error message.
  • Selector: SelectorIDThe unique identifier for the selector
  • Selector: SelectorTagThe selector - CSS attribute, ID, class, etc.
  • Selector: SelectorFontIDThe font ID assigned to the selector.
  • TotalRecordsTotal number of records
  • PageStartstarting record requested (zero-based)
  • PageLimit# of records requested

Sample Code

PHP

<?php

require_once('Services_WFS.php');

$services = new Services_WFS;

$apiKey = '[Your API Key]';
$publicKey = '[Your Public Key]';
$privateKey = '[Your Private Key]';
$services->setCredentials($publicKey, $privateKey, $apiKey);

$my_project_name = '[project name]';
$projectKey = $wfs->getProjectKeyByName($my_project_name);
$services->setProjectKey($projectKey);
$services->setAutoPublish(1); // do not auto publish

$wfs_selector_tag = 'h1.another';

$result = $services->addSelector($wfs_selector_tag);

var_dump($result);

?>
       

C#

    private string AddSelector(string selectorId, string projectId, int publish, int pageStart = 0, int pageLimit = 10)
    {

      const string method = "POST";
      string requestUri = "/rest/" + Format  + "/Selectors/" + 
                                               "?wfspid=" + projectId +
                                               "&wfsnopublish=" + publish +
                                               "&wfspstart=" + pageStart + 
                                               "&wfsplimit=" + pageLimit;
      var data = "wfsselector_tag=" + selectorId;

      //See common functions for GetResponse
      return GetResponse(method, requestUri, data);

    }       

VB.NET

  Private Function AddSelector(ByVal selectorId As String, ByVal projectId As String, ByVal publish As Integer, Optional ByVal pageStart As Integer = 0, Optional pageLimit As Integer = 10) As String

    Const method As String = "POST"
    Dim requestUri As String = "/rest/" & Format & "/Selectors/" & _
                               "?wfspid=" & projectId & _
                               "&wfsnopublish=" & publish & _
                               "&wfspstart=" & pageStart & _
                               "&wfsplimit=" & pageLimit
    Dim data = "wfsselector_tag=" & selectorId

    'See common functions for GetResponse
    Return GetResponse(method, requestUri, data)

  End Function       

XML Response

<Selectors>
  <ProjectID>7bff9927-7964-4f6f-a132-adcae35ad51f</ProjectID>
  <Message>Success</Message>
  <Selector>
    <SelectorID>3ff4c957-65fd-428d-a53b-3892da0b1960</SelectorID>
    <SelectorTag>h1</SelectorTag>
    <SelectorFontID>0</SelectorFontID>
  </Selector>
  <TotalRecords>1</TotalRecords>
  <PageStart>0</PageStart>
  <PageLimit>10</PageLimit>
</Selectors>

json Response

{
   "Selectors":{
      "Message":"Success",
      "PageLimit":"10",
      "PageStart":"0",
      "ProjectID":"7bff9927-7964-4f6f-a132-adcae35ad51f",
      "Selector":{
         "SelectorFontID":"0",
         "SelectorID":"3ff4c957-65fd-428d-a53b-3892da0b1960",
         "SelectorTag":"h1"
      },
      "TotalRecords":"1"
   }
}