Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

titleDRAFT * DRAFT * DRAFT




Section


Column
width20%


Panel
borderColor#BF9900
bgColor#FFFFFF
titleBGColor#E5D699
borderStylesolid
titleIn this Section
borderStylesolid
Table of Contents
indent15px
stylenone




 
Column

Overview

API Requirements

Audience
Include Page

Application Requirements

Each request must provide a valid application key. You may sign up for your own application key here <INSERT LINK>.
API Requirements
API Requirements

Getting Started

The easiest way to start learning about this interface is to try it out. This section shows how to use the curl command line tool to execute sample queries.

Code Block
titleSample JSON Request
	curl -i -H "Accept: application/json" https://iet-ws-test.ucdavis.edu/api/iam/people/search?oFirstName=Gary&oLastName=Sharpe&key=myKey&v=1.0

The response to all of the above requests have a Content-Type of text/javascript.  An example response for the the following the above request is shown below:

Code Block
langxml
titleSample JSON Response

{
"reponseData":{
"results":[
{
"iamidiamId":"1000014336",
"mothraId":null,
"ppsId":null,
"ppsidemployeeId": null,
"studentId":null,
"externalId":null,
"dFirstName":null,
"dFullName":" ",
"dLastName":null,
"dMiddleName":null,
"modifyDate":null,
"oFirstName":"GARY",
"oFullName":"GARY SHARPE",
"oLastName":"SHARPE",
"oMiddleName":null,
"bannerPIdM":null,
"oSuffix":null,
"dSuffix":null,
"dPronouns":null,
"isEmployee":nulltrue,
"isHSEmployee":nullfalse,
"isFaculty":"N"false,
"isStudent":"N"false,
"isStaff":"Y"true,
"isExternal":"N"false,
"privacyCode":null
}
]},
"responseDetails":null,
"responseStatus":0
}

JSON Reference

Unlike the core JavaScript interface, the JSON interface is exposed through a uniform URL that contains CGI arguments. Your application can use an HTTP stack of its choosing. In order to use the JSON interface:

  • You must construct a properly formatted URL with all necessary CGI arguments.
  • You must send an HTTP referer header that accurately identifies your application.
  • You must process the JSON-encoded response.
    Include Page
    JSON Reference
    JSON Reference

    Request Format

    URL Base Addresses

    The following URL patterns are supported by the IAM Identity Store Core People API:

    Code Block
    langxml
    titleSupported URL Patterns
    
    https://iet-ws.ucdavis.edu/api/iam/people/{iamid}
    
    https://iet-ws.ucdavis.edu/api/iam/people/search
    
    

    URL Arguments

    Include Page
    URL Arguments

    This section describes the arguments that can be used for search requests.

    The value of a CGI argument must always be properly escaped. This can be done via the functional equivalent of JavaScript's encodeURIComponent() method.
    URL Arguments
    Required URL Arguments 
    Include Page
    Required URL Arguments
    Required URL Arguments
    The following table lists the required
    Other Supported URL arguments
    .

    Argument

    Example

    Description

    key

    key=your-key

    This argument supplies the application's key. You can sign up for an API key <INSERT LINK HERE>.
    It must be a valid key associated with your application. The key is required for this API to implement quality of service rules for this API. If your application is making too many requests it will be throttled to ensure resources are not overloaded during times of peak usage. Also, by supplying a key we can identify and contact you should something go wrong with your application.

    v

    v=1.0

    This argument supplies protocol version number. The only valid value at this point in time is 1.0.

    Supported URL arguments

    The following table lists the supported URL arguments for each supported URL pattern.

    At least one argument should be provided to perform a search. If multiple search criteria are provided an 'AND' search will be performed to match on all arguments.

    Response Format

    Each response follow this general format:

    Code Block
    langxml
    
    {
      "responseData" : {
        "results" : []
      },
      "responseDetails" : null | string-on-error,
      "responseStatus" : 0 | error-code
    }
    

    In the JSON fragment above, note that the responseData property contains a results array and an optional cursor.

    Results Array: guaranteed fields

    Include Page
    Supported URL Arguments
    Supported URL Arguments

    URL

    Supported Arguments

    https://iet-ws.ucdavis.edu/api/iam/people/search

    oFirstName
    oMiddleName
    oLastName
    dFirstName
    dMiddleName
    dLastName
    mothraId
    studentId
    externalId
    iamId
    ppsId
    employeeId
    bannerPIdM


    Response Format

    Include Page
    Response Format for IET-WS APIs
    Response Format for IET-WS APIs

    Results Array: Guaranteed Fields

    The results array always contains the parameters listed in this section, even if the value is empty.

    Property

    Description

     

    iamId

    Unique University ID created by IAM system. Replaces MOTHRAID.

    mothraId

    Legacy unique ID from mothra system.

    ppsId

    PPS employee ID

     employeeId EmployeeID is 9 digit currently and will be converted to 11 digit for UCPath

    studentId

    Banner student ID

    bannerPIdM

    Banner alternative ID for faculty/instructors and students

    externalId

    Unique ID from external systems

    oFirstName

    Official First Name (Will be replaced with lived name in the next version release)

    oMiddleName

    Official Middle Name (Will be replaced with lived name in the next version release)

    oLastName

    Official Last Name (Will be replaced with lived name in the next version release)

    oSuffix

    Official Suffix (Will be replaced with lived name in the next version release)

    oFullName

    Composite of O_[F/M/L]NAME (Will be replaced with lived name in the next version release)

    dFirstName

    Lived First Name (from Online Directory)

    dMiddleName

    Lived Middle Name (from Online Directory)

    dLastName

    Lived Last Name (from Online Directory)

    dSuffix

    Lived Suffix (from Online Directory)

    dPronounsLived Preferred Pronouns (from Online Directory)

    dFullName

    Composite of Lived_[F/M/L]NAME

    isEmployee

    true/false, Does the person have an employee affiliation (either staff or faculty)

    isHSEmployee

    true/false, Does the person have an employee affiliation from the UCDHS

    isFaculty

    true/false, Does the person have a faculty affiliation

    isStudent

    true/false, Does the person have a student affiliation

    isStaff

    true/false, Does the person have a staff affiliation

    isExternal

    true/false, Does the person have an external affiliation

    privacyCode

    Privacy code that applies to this person (currently only FERPA from Banner)

    modifyDate

    Last date any attribute for this person was modified

    results[]

    results[] contains an array of bulk load result objects, one for each result. Each time the API executes, this property is cleared, and each time a API completes, the array is populated. If there are no results to report, the .length property of this array will be set to 0. Therefore, results will never be null, and you can always safely check for results.length == 0.

    The responseStatus property contains a value of 0 on success and a custom error status code on failure. If there is a failure, responseDetails contains a diagnostic string.

    Troubleshooting

    If you encounter problems with your code:
  • Make sure your API key is valid.
  • Look for typos. Remember that JavaScript is a case-sensitive language.
  • Use a JavaScript debugger. In Firefox, you can use the JavaScript console or the Firebug. In IE, you can use the Microsoft Script Debugger.
  • If you need to examine the JSON string returned from the server, you can use JSON Lint to make a single, long string human readable.
  • Email middleware-api@ucdavis.edu with a description of your problem and a trace of the request and response.

    Response Codes and Messages

    Include Page
    Response Codes and Messages
    Response Codes and Messages

    Troubleshooting

    Include Page
    Troubleshooting IET-WS APIs
    Troubleshooting IET-WS APIs



    Column


    Section