AgileApps Support Wiki Pre Release

Difference between revisions of "REST API:index Resource"

From AgileApps Support Wiki
imported>Aeric
imported>Aeric
 
(22 intermediate revisions by the same user not shown)
Line 4: Line 4:


===Permissions===
===Permissions===
:* [[Develop Tools]] permission must be enabled for the tenant.
{{permissions|Use Development Features|use this resource.}}
{{permissions|Manage Develop Features|use this resource.}}
 
===List All index (Record)s===
("Get" if complete records are returned. "List" if partial data is returned, requiring a second read to get a complete set of data. This comes before the GET, because typically it's called first to get the ID used in a specific-record GET.)


===Get a List of Object Indexes===
;Method:GET
;Method:GET
   
   
;URI:<tt><nowiki>https://{domain}/networking/rest/index</nowiki></tt>
;URI:<tt>{{platformURL}}/rest/index/{objectName}</tt>  
:Return all fields
;URI:<tt><nowiki>https://{domain}/networking/rest/index?{query_parameters}</nowiki></tt>
 
{{Query Parameters|
:Introductory sentence, if any
:*<tt>parameter1</tt> - Description
:*<tt>parameter2</tt>
::* If TRUE, ...
::* If FALSE, ...}}


;Response:
;Response:
Line 27: Line 15:
<platform>
<platform>
     <index>
     <index>
         <id>...</id>
         <name>AuthorIndex</name>
         <field>data</field>
         <uniqueIndex>false</uniqueIndex>
        ...
        <useInImportForMerge>false</useInImportForMerge>
        <indexFields>author_name</indexFields>
     </index>
     </index>


Line 42: Line 31:
         <description>Success</description>
         <description>Success</description>
     </message>
     </message>
     <recordCount>N</recordCount>      <!-- Number of __ records returned -->
     <recordCount>N</recordCount>      <!-- Number of indexes returned -->
</platform>
</platform>
</syntaxhighlight>
</syntaxhighlight>
Line 48: Line 37:
:See also: [[REST API:Error Codes]]
:See also: [[REST API:Error Codes]]


===Get a index Record===
===Get an Object Index ===
;Method:GET
;Method:GET
   
   
;URI:<tt><nowiki>https://{domain}/networking/rest/index/{recordId}</nowiki></tt>
;URI:<tt>{{platformURL}}/rest/index/{objectName}/{indexName}</tt>
:Return all fields
;URI:<tt><nowiki>https://{domain}/networking/rest/index/{recordId}?{query_parameters}</nowiki></tt>  
{{Query Parameters|
:Introductory sentence, if any
::*<tt>parameter1</tt> - Description
::*<tt>parameter2</tt>
:::* If <tt>true</tt>, ...
:::* If '''<tt>false</tt>''', ... ('''default''')}}


;Response:
;Response:
Line 65: Line 46:
<platform>
<platform>
     <index>
     <index>
         <id>...</id>
         <id>a5baa89caa064ed995c6c14f402db379</id>
         <field>data</field>
        <objectName>Books</objectName>
        ...
        <name>AuthorIndex</name>
        <uniqueIndex>false</uniqueIndex>
        <useInImportForMerge>false</useInImportForMerge>
        <indexFields>author_name</indexFields>
        <date_created>2012-02-09T08:00:00.000Z</date_created>
         <date_modified>2012-02-13T08:00:00.000Z</date_modified>
        <modified_id
            type="USER" uri="..."
            displayValue="...">...userId...</modified_id>
     </index>
     </index>


Line 79: Line 68:
:See also: [[REST API:Error Codes]]
:See also: [[REST API:Error Codes]]


===Add a index Record===
===Add an Index to an Object===


;Method:POST
;Method:POST
   
   
;URI:<tt><nowiki>https://{domain}/networking/rest/index</nowiki></tt>  
;URI:<tt>{{platformURL}}/rest/index/{objectName}</tt>  


;Request:
;Request:
Line 89: Line 78:
<platform>
<platform>
     <index>
     <index>
         <field>data</field>
         <name>IBSN_Index</name>
        ...
        <uniqueIndex>false</uniqueIndex>
        <useInImportForMerge>false</useInImportForMerge>
        <indexFields>ibsn_number</indexFields>
     </index>
     </index>
</platform>
</platform>
Line 108: Line 99:
:See also: [[REST API:Error Codes]]
:See also: [[REST API:Error Codes]]


===Update a index Record===
===Update an Object Index ===
;Method:PUT
;Method:PUT
   
   
;URI:<tt><nowiki>https://{domain}/networking/rest/index/{recordId}</nowiki></tt>  
;URI:<tt>{{platformURL}}/rest/index/{objectName}/{indexName}</tt>  


;Request:
;Request:
:(Only one field can be updated.)
:<syntaxhighlight lang="xml" enclose="div">
:<syntaxhighlight lang="xml" enclose="div">
<platform>
<platform>
     <index>
     <index>
        <id>{recordId}</id>
      <useInImportForMerge>true</useInImportForMerge>
        ...
     </index>
     </index>
</platform>
</platform>
Line 135: Line 126:
:See also: [[REST API:Error Codes]]
:See also: [[REST API:Error Codes]]


===Delete a index Record ===
===Delete an Object Index ===


;Method:DELETE
;Method:DELETE


;URI:<tt><nowiki>https://{domain}/networking/rest/index/{recordId}</nowiki></tt>
;URI:<tt>{{platformURL}}/rest/index/{objectName}/{indexName}</tt>


;Response:
;Response:
Line 155: Line 146:
===Fields===
===Fields===
:''Note:'' Unless otherwise indicated, the attribute for a field is "Editable on Add or Update".
:''Note:'' Unless otherwise indicated, the attribute for a field is "Editable on Add or Update".
:{| border="1" cellpadding="5" cellspacing="0"
:{| border="1" cellpadding="3" cellspacing="0"
! Name!!Type!!Attribute!!Required on Add!!Description!!Additional Information
! Name!!Type!!Attribute!!Required on Add!!Description!!Additional Information
|-
|-
| id || String || align="center"|Read Only || || || [[Record Id]]
| id || String || align="center"|Read&nbsp;Only || || Index ID || [[Record Id]]
|-
| name || String || || align="center"|[[File:Checkmark.gif|link=]] || ||
|-
| description || String || || || ||
|-
| ...|| ... || ... || ... || ... || ...
|-
| tag || String || align="center"|Read Only || || description || AddlInfo
|-
|-
| tag || String || || || description || AddlInfo
| objectName || String || align="center"|Read Only || || Object name ||  
|-
|-
| tag || String || || align="center"|[[File:Checkmark.gif|link=]] || description || AddlInfo
| name || String || Add Only || align="center"|[[File:Checkmark.gif|link=]] || Index name ||  
|-
|-
| tag || String || align="center"|Writable on Add only || align="center"|[[File:Checkmark.gif|link=]] || description || AddlInfo
| indexFields || String || Add Only || align="center"|[[File:Checkmark.gif|link=]] || Fields that make up the index || Comma-separated list of field names
|-
|-
| ...|| ... || ... || ... || ... || ...
| uniqueIndex || Boolean || Add Only || || If true, index keys must be unique || true or '''false''' (default)
|-
|-
| ...|| ... || ... || ... || ... || ...
| useInImportForMerge || Boolean || || || If true, index is used during an import merge || true or '''false''' (default)


|-  
|-  
| colspan="6"  bgcolor="Azure" style="height:7px" |  <!-- SPACER ROW -->
| colspan="6"  bgcolor="lightblue" style="height:7px" |  <!-- SPACER ROW -->


|-
|-
Line 190: Line 173:
| modified_id || Lookup || align="center"|Read Only || || || [[REST API:User Resource|User]] ID
| modified_id || Lookup || align="center"|Read Only || || || [[REST API:User Resource|User]] ID
|}
|}
===Error Codes===
:{| border="1" cellpadding="5" cellspacing="0"
! Platform Code||with Http Status||Description
|-
| align="center"| -7000 || BAD_REQUEST (400) || Invalid index name
|}
''Learn more:''
:* See the [[REST API:Error Codes]] for common Http error codes
:* See the [{{DOCHOST}}/javadocs/constant-values.html javadoc constants] for a complete list of <tt>PlatformException</tt> error-code constants.
<noinclude>
<noinclude>


[[Category:REST API|index Resource]]
[[Category:REST API|index Resource]]
</noinclude>
</noinclude>

Latest revision as of 00:38, 8 June 2012

Manage index metadata for an Object using the REST API.

Learn more: REST API Conventions and Considerations.

Permissions

Lock-tiny.gif

Users that have the Use Development Features permission can use this resource. 

Get a List of Object Indexes

Method
GET
URI
https://{yourDomain}/networking/rest/index/{objectName}
Response
<syntaxhighlight lang="xml" enclose="div">

<platform>

   <index>
       <name>AuthorIndex</name>
       <uniqueIndex>false</uniqueIndex>
       <useInImportForMerge>false</useInImportForMerge>
       <indexFields>author_name</indexFields>
   </index>
   <index>
        ...
   </index>
    ...
   <message>
       0
       <description>Success</description>
   </message>
   <recordCount>N</recordCount>      

</platform> </syntaxhighlight>

See also: REST API:Error Codes

Get an Object Index

Method
GET
URI
https://{yourDomain}/networking/rest/index/{objectName}/{indexName}
Response
<syntaxhighlight lang="xml" enclose="div">

<platform>

   <index>
       <id>a5baa89caa064ed995c6c14f402db379</id>
       <objectName>Books</objectName>
       <name>AuthorIndex</name>
       <uniqueIndex>false</uniqueIndex>
       <useInImportForMerge>false</useInImportForMerge>
       <indexFields>author_name</indexFields>
       <date_created>2012-02-09T08:00:00.000Z</date_created>
       <date_modified>2012-02-13T08:00:00.000Z</date_modified>
       <modified_id 
            type="USER" uri="..." 
            displayValue="...">...userId...</modified_id>
   </index>
   <message>
       0
       <description>Success</description>
   </message>

</platform> </syntaxhighlight>

See also: REST API:Error Codes

Add an Index to an Object

Method
POST
URI
https://{yourDomain}/networking/rest/index/{objectName}
Request
<syntaxhighlight lang="xml" enclose="div">

<platform>

   <index>
       <name>IBSN_Index</name>
       <uniqueIndex>false</uniqueIndex>
       <useInImportForMerge>false</useInImportForMerge>
       <indexFields>ibsn_number</indexFields>
   </index>

</platform> </syntaxhighlight>

Response
<syntaxhighlight lang="xml" enclose="div">

<platform>

   <message>
       0
       <description>Success</description>
       <id>...</id>   
   </message>

</platform> </syntaxhighlight>

See also: REST API:Error Codes

Update an Object Index

Method
PUT
URI
https://{yourDomain}/networking/rest/index/{objectName}/{indexName}
Request
(Only one field can be updated.)
<syntaxhighlight lang="xml" enclose="div">

<platform>

   <index>
     <useInImportForMerge>true</useInImportForMerge>
   </index>

</platform> </syntaxhighlight>

Response
<syntaxhighlight lang="xml" enclose="div">

<platform>

   <message>
       0
       <description>Success</description>
   </message>

</platform> </syntaxhighlight>

See also: REST API:Error Codes

Delete an Object Index

Method
DELETE
URI
https://{yourDomain}/networking/rest/index/{objectName}/{indexName}
Response
<syntaxhighlight lang="xml" enclose="div">

<platform>

   <message>
       0
       <description>Success</description>
   </message>

</platform> </syntaxhighlight>

See also: REST API:Error Codes

Fields

Note: Unless otherwise indicated, the attribute for a field is "Editable on Add or Update".
Name Type Attribute Required on Add Description Additional Information
id String Read Only Index ID Record Id
objectName String Read Only Object name
name String Add Only Checkmark.gif Index name
indexFields String Add Only Checkmark.gif Fields that make up the index Comma-separated list of field names
uniqueIndex Boolean Add Only If true, index keys must be unique true or false (default)
useInImportForMerge Boolean If true, index is used during an import merge true or false (default)
date_modified Date Read Only UTC Format
date_created Date Read Only UTC Format
created_id Lookup Read Only User ID
modified_id Lookup Read Only User ID

Error Codes

Platform Code with Http Status Description
-7000 BAD_REQUEST (400) Invalid index name

Learn more: