To restrict the output from a project endpoint, you include a filter in the GET /project-service/api/projects request. The API service uses the operation to filter for a collection of projects to paginate, order, or count your results.
Filter operation examples
The following examples show how to incorporate filter operations into project queries.
| Operation | Query |
|---|---|
| equal | $url/project-service/api/projects?$filter=name%20eq%20'00-TestProject' |
| not equal | $url/project-service/api/projects?$filter=name%20ne%20'00-TestProject' |
| logical and | $url/project-service/api/projects?$filter=name%20eq%20'00-TestProject'%20and%20sharedResources%20eq%20true |
| logical or | $url/project-service/api/projects?$filter=name%20eq%20'00-TestProject'%20or%20sharedResources%20eq%20false |
| logical negation | $url/project-service/api/projects?$filter=not%20startswith(name,'00') |
| starts with | $url/project-service/api/projects?$filter=startswith(name, '00') |
| substring of | $url/project-service/api/projects?$filter=substringof('00', name) |
| ends with | $url/project-service/api/projects?$filter=endswith(name, '00') |
| length | $url/project-service/api/projects?$filter=length(name)%20eq%205 |
| index of | $url/project-service/api/projects?$filter=indexof(name,'00')%20eq%200 |
| substring from | $url/project-service/api/projects?$filter=substring(name, 1)%20eq%20'0-Te' |
| substring from to | $url/project-service/api/projects?$filter=substring(name, 1, 2)%20eq%20'0-' |
| to lower | $url/project-service/api/projects?$filter=tolower(name)%20eq%20'00-testproject' |
| to upper | $url/project-service/api/projects?$filter=toupper(name)%20eq%20'00-TESTPROJECT' |
| concatenate | $url/project-service/api/projects?$filter=concat(concat(name,','),description)%20eq%20'test project,test project description' |
| trim | $url/project-service/api/projects?$filter=trim(name)%20eq%20'00-TestProject' |
Related query examples
The following examples show how to use related query options to paginate, order, or count your results.
| If you want to... | Use this request |
|---|---|
| List the first twenty items | curl -X GET $url/project-service/api/projects?$top=20 -H 'Content-Type: application/json' -H "Authorization: Bearer $access_token" | jq "." |
| Skip the first ten items in the collection | curl -X GET $url/project-service/api/projects?$skip=10 -H 'Content-Type: application/json' -H "Authorization: Bearer $access_token" | jq "." |
| List the items in ascending order with asc or descending order with desc. If the type of order is not specified, the list defaults to ascending order. | For ascending order:curl -X GET $url/project-service/api/projects?$skip=0$orderBy=name%20asc -H 'Content-Type: application/json' -H "Authorization: Bearer $access_token" | jq "."For descending order: curl -X GET $url/project-service/api/projects?$skip=0$orderBy=name%20desc -H 'Content-Type: application/json' -H "Authorization: Bearer $access_token" | jq "." |
| List the total number of items in the collection. | curl -X GET $url/project-service/api/projects?$count=true -H 'Content-Type: application/json' -H "Authorization: Bearer $access_token" | jq "." |