{*
 +--------------------------------------------------------------------+
 | Copyright CiviCRM LLC. All rights reserved.                        |
 |                                                                    |
 | This work is published under the GNU AGPLv3 license with some      |
 | permitted exceptions and without any warranty. For full license    |
 | and copyright information, see https://civicrm.org/licensing       |
 +--------------------------------------------------------------------+
*}
{htxt id="param-name-title"}
  {ts}Parameter Name{/ts}
{/htxt}
{htxt id="param-name"}
  <p>
    {ts}Choose a parameter from the list, or select "other" for manual entry.{/ts}
  </p>
{/htxt}

{htxt id="param-op-title"}
  {ts}Operator{/ts}
{/htxt}
{htxt id="param-op"}
  <p>
    {ts}The default operator is equals (=), and is the only operator supported for "create" or "delete" actions.{/ts}
  </p>
  <p>
    {ts}Some apis support a special syntax to allow other operators for "get" type actions. Choosing a different operator will automatically use this syntax, although it may not work with every api.{/ts}
  </p>
{/htxt}

{htxt id="param-value-title"}
  {ts}Parameter Value{/ts}
{/htxt}
{htxt id="param-value"}
  <p>
    {ts}The following formats are accepted:{/ts}
    <ul>
      <li>{ts}Simple values such as numbers, true, false and null.{/ts}</li>
      <li>{ts}Strings. You may include quotes around the string to ensure it's not interpreted otherwise, e.g. "false".{/ts}</li>
      <li>{ts}Arrays in js format, e.g. [1, 2, 3, 'foo', 'bar', 'baz'].{/ts}</li>
      <li>{ts}Associative arrays in js object format, e.g. {ldelim}first: "one", second: "two", third: 3{rdelim}.{/ts}</li>
      <li>{ts}A comma-separated list will automatically be turned into an array for multivalue operations, or you can explicitly use the js array format above.{/ts}</li>
    </ul>
  </p>
{/htxt}

{htxt id="api-chain-title"}
  {ts}Api Chaining{/ts}
{/htxt}
{htxt id="api-chain"}
  <p>{ts}Chains allow you to execute api calls on the results of this one.{/ts}</p>
  <p>{ts}Example: When creating a contact, you can chain the Email.create api to add email addresses for them.{/ts}</p>
  <p>{ts}Disambiguation: api chains are different from joins in that chaining executes a separate api call for every result returned from the main call.{/ts}</p>
{/htxt}

{htxt id="api-join-title"}
  {ts}Api Joins{/ts}
{/htxt}
{htxt id="api-join"}
  <p>{ts}Join this api call to return values from or filter on a related entity.{/ts}</p>
  <p>{ts}The new fields will be selectable from the "Params" and "Fields to return" lists.{/ts}</p>
  <p>{ts}Example: If the api entity is Email, you can also fetch the display name of the contact this email belongs to.{/ts}</p>
  <p>{ts}Disambiguation: Joins are different from api chaining in that joins execute as a single SELECT query, and only work for api "get" operations.{/ts}</p>
{/htxt}
