CampusAPI Hold Services API documentation version 0.1.0
Based on OSID version 3.0.0
https://base.url
Overview
The Hold services provide a means for manging "blacklists". Hold adds the concept of "except for" across the CampusAPI environment. The Hold services can be used as part of the implementation of an Authorization service to override authorization Functions or as part of a Rules implementation to define managed Checks in a business process.
This package includes the following entities:
Blocks
Issues are be mapped to Blocks. The Block is the entity that is checked by an external evaluator. A person is "blocked" if they have any Holds related to Issues mapped to the Block. The separation of a Block and an Issue allows for one party to maintain their set of Issues that impacts the business process of another party that authors the Blocks. An example is a registrar of a university that blocks registration for students who have not returned their library books.
| Field | Description | Type |
|---|---|---|
| id(read‑only) | The unique id of this block, provided by system. | string(osid‑id) |
| uri(read‑only) | The uri of this block, provided by system. | string(uri) |
| displayName | The name of this block for display. | string |
| description | The description of this block. | string |
| genusTypeId (read‑only) | Id of the immutable type of this block. Default type set by system unless specified in query parameter. | string(osid‑id) |
| recordTypeIds (read‑only) | Type Ids of record types available on this block. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere. | string(osid‑id)[] |
| issueIds | The issues. References an array of hold.Issue objects. | string(osid‑id)[] |
Issues
An Issue represents a problem. A problem might be the lack of a payment or the hosing of a system.
| Field | Description | Type |
|---|---|---|
| id(read‑only) | The unique id of this issue, provided by system. | string(osid‑id) |
| uri(read‑only) | The uri of this issue, provided by system. | string(uri) |
| displayName | The name of this issue for display. | string |
| description | The description of this issue. | string |
| genusTypeId (read‑only) | Id of the immutable type of this issue. Default type set by system unless specified in query parameter. | string(osid‑id) |
| recordTypeIds (read‑only) | Type Ids of record types available on this issue. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere. | string(osid‑id)[] |
| bureauId | The resource that has authority for this issue. References a resource.Resource object | string(osid‑id) |
Holds
A Hold is relationship between a Resource and an Issue. A Hold says that a person has not made their payment or has some other problem identified by the related Issue.
| Field | Description | Type |
|---|---|---|
| id(read‑only) | The unique id of this hold, provided by system. | string(osid‑id) |
| uri(read‑only) | The uri of this hold, provided by system. | string(uri) |
| displayName | The name of this hold for display. | string |
| description | The description of this hold. | string |
| genusTypeId (read‑only) | Id of the immutable type of this hold. Default type set by system unless specified in query parameter. | string(osid‑id) |
| recordTypeIds (read‑only) | Type Ids of record types available on this hold. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere. | string(osid‑id)[] |
| startDate | The starting date of this hold. | string(date‑time) |
| endDate | The ending date of this hold. | string(date‑time) |
| endReasonId | The reason this hold ended. References a process.State object. | string(osid‑id) |
Oubliettes
Holds, Issues, and Blocks are organized into federatable catalogs called Oubliettes.
| Field | Description | Type |
|---|---|---|
| id(read‑only) | The unique id of this oubliette, provided by system. | string(osid‑id) |
| uri(read‑only) | The uri of this oubliette, provided by system. | string(uri) |
| displayName | The name of this oubliette for display. | string |
| description | The description of this oubliette. | string |
| genusTypeId (read‑only) | Id of the immutable type of this oubliette. Default type set by system unless specified in query parameter. | string(osid‑id) |
| recordTypeIds (read‑only) | Type Ids of record types available on this oubliette. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere. | string(osid‑id)[] |
| providerId | The provider of this oubliette. References a resource.Resource object. | string(osid‑id) |
| brandingIds | The branding of this oubliette. References repository.Asset objects. | string(osid‑id)[] |
| license | The licensing that applies to this oubliette. | string |
License
CampusAPI REST Definitions © 2025 by DXtera Institute - licensed under CC BY-ND 4.0 Based on the Open Service Interface Definitions: http://osid.org
/hold/blocks
Collection of Blocks in a system, federation of systems, or in a default Oubliette.
Get all Blocks in the system or default Oubliette.
Create a new Block in the default Oubliette.
get /hold/blocks
Get all Blocks in the system or default Oubliette.
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "issues", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all - keyword: (string)
The match string for keyword query
Example:
Hello%20World - displayName: (string)
The match string for displayName query
Example:
Hello%20World - description: (string)
The match string for description query
Example:
Hello%20World - genusTypeId: (string)
The id string to match a genusType
Example:
type.Type%3AexampleBlockType%40dxtera.org - parentGenusTypeId: (string)
The id string to match a parent genusType
Example:
type.Type%3AparentTypeExampleBlockType%40dxtera.org - recordTypeId: (string)
The id string to match a recordType
Example:
type.Type%3AexampleBlockType%40campusapi.org - oublietteId: (string)
The id string to match a oubliette
Example:
hold.Oubliette%3A8374%40base.url
HTTP status code 200
Headers
- x-total-count: required(number)
The total count of records currently available
Example:
152803
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Block:632@base.url",
"uri": "http://base.url/open/campusapi/hold/block/hold.Block%3A632%40base.url",
"displayName": "Display Name of this Block",
"description": "The description of this Block",
"genusTypeId": "type.Type:defaultBlockType@base.url",
"recordTypeIds": [ "type.Type:exampleBlockRecordType@campusapi.org", "..."],
"issueIds": [ "hold.Issue:8510@base.url", "..." ]
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
post /hold/blocks
Create a new Block in the default Oubliette.
Query Parameters
- oublietteId: (string)
specify in which oubliette to create this block
Example:
hold.Oubliette%3A8374%40base.url
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Block",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this block. This id is provided solely by the underlying implementation and is not set on POST and cannot be changed. An id included on POST will result in an error.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this block. This URI is provided solely by the underlying implementation and is not set on POST and cannot be changed. A uri included on POST will result in an error.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this block for display.",
"type": "string"
},
"description": {
"description": "The description of this block.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this block. Default type set by system unless specified in query parameter.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this block. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"issueIds": {
"description": "The issues.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
}
}
}
}Example:
{
"displayName": "Display Name of this Block",
"description": "The description of this Block",
"issueIds": [ "hold.Issue:9226@base.url", "..." ]
}
Query the collection of Blocks in a system, federation of systems, or in a default oubliette by posting a Query object.
Submit a query using a BlockQuery object.
post /hold/blocks/block-query
Submit a query using a BlockQuery object.
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "issues", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "BlockQuery",
"type": "object",
"properties": {
"matchIds": {
"description": "List of Ids to match. Boolean OR performed among multiple Ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchKeywords": {
"description": "List keywords to match. Multiple keywords can be added to perform a boolean OR among them. A keyword may be applied to any of the elements defined in this object such as the display name, description or any attribute defined in or implemented by this object.",
"type": "array",
"items": {
"type": "object",
"properties": {
"keyword": {
"description": "keyword to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDisplayNames": {
"description": "List of displayName strings to match. Boolean OR performed among multiple displayNames.",
"type": "array",
"items": {
"type": "object",
"properties": {
"displayName": {
"description": "displayName to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDescriptions": {
"description": "List of discription strings to match. Boolean OR performed among multiple descriptions.",
"type": "array",
"items": {
"type": "object",
"properties": {
"description": {
"description": "description to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchGenusTypeIds": {
"description": "List of genus type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "genus type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchRecordTypeIds": {
"description": "List of record type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "record type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchSubjectIds": {
"description": "List of Ids to match an object with a relationships to the given subjects.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchJournalEntryIds": {
"description": "List of Ids match objects that have the given journal entries.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"journalEntryQueries": {
"description": "journaling.JournalEntryQueries to match journaling information. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "journal-entry-query"
}
},
"matchIssueIds": {
"description": "List of Issue Ids for this query to match issues.",
"type": "array",
"items": {
"type": "object",
"properties": {
"issueId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"issueQueries": {
"description": "hold.IssueQueries to match the Issues. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "issue-query"
}
},
"matchAnyIssue": {
"description": "Match issues with any value. true to match Blocks with any issues, false to match Blocks with no issues",
"type": "boolean"
},
"matchOublietteIds": {
"description": "List of Oubliette Id's to match.",
"type": "array",
"items": {
"type": "object",
"properties": {
"oublietteId": {
"description": "Oubliette id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"oublietteQueries": {
"description": "OublietteQueries to match Oubliette. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "oubliette-query"
}
}
}
}Example:
{
"matchDisplayNames": [
{
"displayName": "string to exclude",
"match": false
}
]
}HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Block:632@base.url",
"uri": "http://base.url/open/campusapi/hold/block/hold.Block%3A632%40base.url",
"displayName": "Display Name of this Block",
"description": "The description of this Block",
"genusTypeId": "type.Type:defaultBlockType@base.url",
"recordTypeIds": [ "type.Type:exampleBlockRecordType@campusapi.org", "..."],
"issueIds": [ "hold.Issue:8510@base.url", "..." ]
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Create multiple new BlockBatch in the default Oubliette.
post /hold/blocks/block-batch
Create multiple new BlockBatch in the default Oubliette.
Query Parameters
- oublietteId: (string)
specify in which oubliette to create this block
Example:
hold.Oubliette%3A8374%40base.url
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "BlockBatch",
"type": "array",
"Items": {
"type": "block"
}
}Example:
[
{
"displayName": "Display Name of this Block",
"description": "The description of this Block",
"issueIds": [ "hold.Issue:7935@base.url", "..." ]
},
{
"...": "..."
}
]
Entity representing a Block form metadata.
Get form metadata for creating a new Block.
get /hold/blocks/metadata
Get form metadata for creating a new Block.
Query Parameters
- genusType: (string)
specify a particular block type to create
Example:
type.Type%3AexampleBlockType%40dxtera.org - recordType: (array of )
specify support for one or more block record types
Example:
[ "type.Type%3AexampleBlockRecordType%40campusapi.org", "..." ] - oublietteId: (string)
specify in which oubliette to create this block
Example:
hold.Oubliette%3A8374%40base.url
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"$schema": "http://json-schema.org/draft/2019-9/schema#",
"title": "Block",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this block, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this block, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this block for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Block.Block:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this block",
"linked": false
},
"description": {
"description": "The description of this block.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Block.Block:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this block",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this block. Default type set by system unless specified in query parameter on initial post.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this block. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"issueIds": {
"description": "The issues.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id",
"pattern": "",
"enum": []
},
"read-only": false,
"elementId": "hold.Block:issues@dxtera.org",
"existingValue": [],
"elementLabel": "Issues",
"instructions": "Enter Ids for issues of this block.",
"linked": false
}
}
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Entity representing a Block
Get a particular Block given its id.
Update a particular Block given its id.
Delete a particular Block given its id.
get /hold/blocks/{blockId}
Get a particular Block given its id.
URI Parameters
- blockId: required(string)
Query Parameters
- expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "issues", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"id": "hold.Block:632@base.url",
"uri": "http://base.url/open/campusapi/hold/block/hold.Block%3A632%40base.url",
"displayName": "Display Name of this Block",
"description": "The description of this Block",
"genusTypeId": "type.Type:defaultBlockType@base.url",
"recordTypeIds": [ "type.Type:exampleBlockRecordType@campusapi.org", "..."],
"issueIds": [ "hold.Issue:8510@base.url", "..." ]
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Block not found" }
put /hold/blocks/{blockId}
Update a particular Block given its id.
URI Parameters
- blockId: required(string)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "BlockItem",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this block. This id is provided solely by the underlying implementation and is not set on POST and cannot be changed. An id included on POST will result in an error.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this block. This URI is provided solely by the underlying implementation and is not set on POST and cannot be changed. A uri included on POST will result in an error.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this block for display.",
"type": "string"
},
"description": {
"description": "The description of this block.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this block. Default type set by system unless specified in query parameter.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this block. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"issueIds": {
"description": "The issues.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
}
}
}
}Example:
{
"displayName": "Display Name of this Block",
"description": "The description of this Block",
"issueIds": [ "hold.Issue:6325@base.url", "..." ]
}
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The Block has been updated" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Block not found" }
delete /hold/blocks/{blockId}
Delete a particular Block given its id.
URI Parameters
- blockId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The Block has been deleted" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Block not found" }
Entity representing a Block form metadata for update
Get form metadata for updating an existing Block.
get /hold/blocks/{blockId}/metadata
Get form metadata for updating an existing Block.
URI Parameters
- blockId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"$schema": "http://json-schema.org/draft/2019-9/schema#",
"title": "Block",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this block, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this block, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this block for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Block.Block:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this block",
"linked": false
},
"description": {
"description": "The description of this block.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Block.Block:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this block",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this block. Default type set by system unless specified in query parameter on initial post.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this block. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"issueIds": {
"description": "The issues.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id",
"pattern": "",
"enum": []
},
"read-only": false,
"elementId": "hold.Block:issues@dxtera.org",
"existingValue": [],
"elementLabel": "Issues",
"instructions": "Enter Ids for issues of this block.",
"linked": false
}
}
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "block not found" }
/hold/issues
Collection of Issues in a system, federation of systems, or in a default Oubliette.
Get all Issues in the system or default Oubliette.
Create a new Issue in the default Oubliette.
get /hold/issues
Get all Issues in the system or default Oubliette.
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "bureau", "assignedResource", "blockerIssues", "duplicateIssues", "branchedIssue", "reopener", "reopeningAgent", "resolver", "resolvingAgent", "resolutionType", "closer", "closingAgent", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all - keyword: (string)
The match string for keyword query
Example:
Hello%20World - displayName: (string)
The match string for displayName query
Example:
Hello%20World - description: (string)
The match string for description query
Example:
Hello%20World - genusTypeId: (string)
The id string to match a genusType
Example:
type.Type%3AexampleIssueType%40dxtera.org - parentGenusTypeId: (string)
The id string to match a parent genusType
Example:
type.Type%3AparentTypeExampleIssueType%40dxtera.org - recordTypeId: (string)
The id string to match a recordType
Example:
type.Type%3AexampleIssueType%40campusapi.org - oublietteId: (string)
The id string to match a oubliette
Example:
hold.Oubliette%3A8374%40base.url
HTTP status code 200
Headers
- x-total-count: required(number)
The total count of records currently available
Example:
152803
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Issue:7382@base.url",
"uri": "http://base.url/open/campusapi/hold/issue/hold.Issue%3A7382%40base.url",
"displayName": "Display Name of this Issue",
"description": "The description of this Issue",
"genusTypeId": "type.Type:defaultIssueType@base.url",
"recordTypeIds": [ "type.Type:exampleIssueRecordType@campusapi.org", "..."],
"bureauId": "resource.Resource:2710@base.url",
"assignedResourceId": ":9722@base.url",
"blockerIssueIds": [ ":9645@base.url", "..." ],
"duplicateIssueIds": [ ":6114@base.url", "..." ],
"branchedIssueId": ":846@base.url",
"reopenerId": ":6035@base.url",
"reopeningAgentId": ":5783@base.url",
"reopenedDate": "2020-10-03T08:00:00.000Z",
"resolverId": ":7173@base.url",
"resolvingAgentId": ":3892@base.url",
"resolvedDate": "2020-07-21T00:00:00.000Z",
"resolutionType": "type.Type:8957@base.url",
"closerId": ":4975@base.url",
"closingAgentId": ":1446@base.url",
"closedDate": "2020-12-18T17:00:00.000Z"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
post /hold/issues
Create a new Issue in the default Oubliette.
Query Parameters
- oublietteId: (string)
specify in which oubliette to create this issue
Example:
hold.Oubliette%3A8374%40base.url
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Issue",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this issue. This id is provided solely by the underlying implementation and is not set on POST and cannot be changed. An id included on POST will result in an error.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this issue. This URI is provided solely by the underlying implementation and is not set on POST and cannot be changed. A uri included on POST will result in an error.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this issue for display.",
"type": "string"
},
"description": {
"description": "The description of this issue.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this issue. Default type set by system unless specified in query parameter.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this issue. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"bureauId": {
"description": "The resource that has authority for this issue.",
"type": "string",
"format": "osid-id"
}
}
}Example:
{
"displayName": "Display Name of this Issue",
"description": "The description of this Issue",
"bureauId": "resource.Resource:8364@base.url",
"assignedResourceId": ":9047@base.url",
"blockerIssueIds": [ ":5097@base.url", "..." ],
"duplicateIssueIds": [ ":2782@base.url", "..." ],
"branchedIssueId": ":8519@base.url",
"reopenerId": ":8312@base.url",
"reopeningAgentId": ":5060@base.url",
"reopenedDate": "2020-10-03T08:00:00.000Z",
"resolverId": ":9700@base.url",
"resolvingAgentId": ":3388@base.url",
"resolvedDate": "2020-07-21T00:00:00.000Z",
"resolutionType": "type.Type:4630@base.url",
"closerId": ":2533@base.url",
"closingAgentId": ":106@base.url",
"closedDate": "2020-12-18T17:00:00.000Z"
}
Query the collection of Issues in a system, federation of systems, or in a default oubliette by posting a Query object.
Submit a query using a IssueQuery object.
post /hold/issues/issue-query
Submit a query using a IssueQuery object.
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "bureau", "assignedResource", "blockerIssues", "duplicateIssues", "branchedIssue", "reopener", "reopeningAgent", "resolver", "resolvingAgent", "resolutionType", "closer", "closingAgent", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "IssueQuery",
"type": "object",
"properties": {
"matchIds": {
"description": "List of Ids to match. Boolean OR performed among multiple Ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchKeywords": {
"description": "List keywords to match. Multiple keywords can be added to perform a boolean OR among them. A keyword may be applied to any of the elements defined in this object such as the display name, description or any attribute defined in or implemented by this object.",
"type": "array",
"items": {
"type": "object",
"properties": {
"keyword": {
"description": "keyword to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDisplayNames": {
"description": "List of displayName strings to match. Boolean OR performed among multiple displayNames.",
"type": "array",
"items": {
"type": "object",
"properties": {
"displayName": {
"description": "displayName to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDescriptions": {
"description": "List of discription strings to match. Boolean OR performed among multiple descriptions.",
"type": "array",
"items": {
"type": "object",
"properties": {
"description": {
"description": "description to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchGenusTypeIds": {
"description": "List of genus type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "genus type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchRecordTypeIds": {
"description": "List of record type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "record type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchSubjectIds": {
"description": "List of Ids to match an object with a relationships to the given subjects.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchJournalEntryIds": {
"description": "List of Ids match objects that have the given journal entries.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"journalEntryQueries": {
"description": "journaling.JournalEntryQueries to match journaling information. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "journal-entry-query"
}
},
"matchBureauIds": {
"description": "List of Resource Ids for this query to match bureau.",
"type": "array",
"items": {
"type": "object",
"properties": {
"bureauId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"bureauQueries": {
"description": "resource.ResourceQueries to match the Bureau. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "resource-query"
}
},
"matchAnyBureau": {
"description": "Match bureau with any value. true to match Issues with any bureau, false to match Issues with no bureau",
"type": "boolean"
},
"matchOublietteIds": {
"description": "List of Oubliette Id's to match.",
"type": "array",
"items": {
"type": "object",
"properties": {
"oublietteId": {
"description": "Oubliette id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"oublietteQueries": {
"description": "OublietteQueries to match Oubliette. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "oubliette-query"
}
}
}
}Example:
{
"matchDisplayNames": [
{
"displayName": "string to exclude",
"match": false
}
]
}HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Issue:7382@base.url",
"uri": "http://base.url/open/campusapi/hold/issue/hold.Issue%3A7382%40base.url",
"displayName": "Display Name of this Issue",
"description": "The description of this Issue",
"genusTypeId": "type.Type:defaultIssueType@base.url",
"recordTypeIds": [ "type.Type:exampleIssueRecordType@campusapi.org", "..."],
"bureauId": "resource.Resource:2710@base.url",
"assignedResourceId": ":9722@base.url",
"blockerIssueIds": [ ":9645@base.url", "..." ],
"duplicateIssueIds": [ ":6114@base.url", "..." ],
"branchedIssueId": ":846@base.url",
"reopenerId": ":6035@base.url",
"reopeningAgentId": ":5783@base.url",
"reopenedDate": "2020-10-03T08:00:00.000Z",
"resolverId": ":7173@base.url",
"resolvingAgentId": ":3892@base.url",
"resolvedDate": "2020-07-21T00:00:00.000Z",
"resolutionType": "type.Type:8957@base.url",
"closerId": ":4975@base.url",
"closingAgentId": ":1446@base.url",
"closedDate": "2020-12-18T17:00:00.000Z"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Create multiple new IssueBatch in the default Oubliette.
post /hold/issues/issue-batch
Create multiple new IssueBatch in the default Oubliette.
Query Parameters
- oublietteId: (string)
specify in which oubliette to create this issue
Example:
hold.Oubliette%3A8374%40base.url
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "IssueBatch",
"type": "array",
"Items": {
"type": "issue"
}
}Example:
[
{
"displayName": "Display Name of this Issue",
"description": "The description of this Issue",
"bureauId": "resource.Resource:138@base.url",
"assignedResourceId": ":9437@base.url",
"blockerIssueIds": [ ":3834@base.url", "..." ],
"duplicateIssueIds": [ ":9986@base.url", "..." ],
"branchedIssueId": ":974@base.url",
"reopenerId": ":7277@base.url",
"reopeningAgentId": ":2680@base.url",
"reopenedDate": "2020-10-03T08:00:00.000Z",
"resolverId": ":8349@base.url",
"resolvingAgentId": ":3414@base.url",
"resolvedDate": "2020-07-21T00:00:00.000Z",
"resolutionType": "type.Type:6559@base.url",
"closerId": ":7634@base.url",
"closingAgentId": ":2021@base.url",
"closedDate": "2020-12-18T17:00:00.000Z"
},
{
"...": "..."
}
]
Entity representing a Issue form metadata.
Get form metadata for creating a new Issue.
get /hold/issues/metadata
Get form metadata for creating a new Issue.
Query Parameters
- genusType: (string)
specify a particular issue type to create
Example:
type.Type%3AexampleIssueType%40dxtera.org - recordType: (array of )
specify support for one or more issue record types
Example:
[ "type.Type%3AexampleIssueRecordType%40campusapi.org", "..." ] - oublietteId: (string)
specify in which oubliette to create this issue
Example:
hold.Oubliette%3A8374%40base.url
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"$schema": "http://json-schema.org/draft/2019-9/schema#",
"title": "Issue",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this issue, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this issue, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this issue for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Issue.Issue:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this issue",
"linked": false
},
"description": {
"description": "The description of this issue.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Issue.Issue:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this issue",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this issue. Default type set by system unless specified in query parameter on initial post.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this issue. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"bureauId": {
"description": "The resource that has authority for this issue.",
"type": "string",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "hold.Issue:bureau@dxtera.org",
"existingValue": null,
"elementLabel": "Bureau",
"instructions": "Enter the Id of the bureau for this issue.",
"linked": false
}
}
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Entity representing a Issue
Get a particular Issue given its id.
Update a particular Issue given its id.
Delete a particular Issue given its id.
get /hold/issues/{issueId}
Get a particular Issue given its id.
URI Parameters
- issueId: required(string)
Query Parameters
- expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "bureau", "assignedResource", "blockerIssues", "duplicateIssues", "branchedIssue", "reopener", "reopeningAgent", "resolver", "resolvingAgent", "resolutionType", "closer", "closingAgent", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"id": "hold.Issue:7382@base.url",
"uri": "http://base.url/open/campusapi/hold/issue/hold.Issue%3A7382%40base.url",
"displayName": "Display Name of this Issue",
"description": "The description of this Issue",
"genusTypeId": "type.Type:defaultIssueType@base.url",
"recordTypeIds": [ "type.Type:exampleIssueRecordType@campusapi.org", "..."],
"bureauId": "resource.Resource:2710@base.url",
"assignedResourceId": ":9722@base.url",
"blockerIssueIds": [ ":9645@base.url", "..." ],
"duplicateIssueIds": [ ":6114@base.url", "..." ],
"branchedIssueId": ":846@base.url",
"reopenerId": ":6035@base.url",
"reopeningAgentId": ":5783@base.url",
"reopenedDate": "2020-10-03T08:00:00.000Z",
"resolverId": ":7173@base.url",
"resolvingAgentId": ":3892@base.url",
"resolvedDate": "2020-07-21T00:00:00.000Z",
"resolutionType": "type.Type:8957@base.url",
"closerId": ":4975@base.url",
"closingAgentId": ":1446@base.url",
"closedDate": "2020-12-18T17:00:00.000Z"
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Issue not found" }
put /hold/issues/{issueId}
Update a particular Issue given its id.
URI Parameters
- issueId: required(string)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "IssueItem",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this issue. This id is provided solely by the underlying implementation and is not set on POST and cannot be changed. An id included on POST will result in an error.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this issue. This URI is provided solely by the underlying implementation and is not set on POST and cannot be changed. A uri included on POST will result in an error.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this issue for display.",
"type": "string"
},
"description": {
"description": "The description of this issue.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this issue. Default type set by system unless specified in query parameter.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this issue. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"bureauId": {
"description": "The resource that has authority for this issue.",
"type": "string",
"format": "osid-id"
}
}
}Example:
{
"displayName": "Display Name of this Issue",
"description": "The description of this Issue",
"bureauId": "resource.Resource:1759@base.url",
"assignedResourceId": ":1595@base.url",
"blockerIssueIds": [ ":8819@base.url", "..." ],
"duplicateIssueIds": [ ":6350@base.url", "..." ],
"branchedIssueId": ":2250@base.url",
"reopenerId": ":7265@base.url",
"reopeningAgentId": ":6508@base.url",
"reopenedDate": "2020-10-03T08:00:00.000Z",
"resolverId": ":2982@base.url",
"resolvingAgentId": ":7783@base.url",
"resolvedDate": "2020-07-21T00:00:00.000Z",
"resolutionType": "type.Type:7356@base.url",
"closerId": ":8552@base.url",
"closingAgentId": ":9726@base.url",
"closedDate": "2020-12-18T17:00:00.000Z"
}
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The Issue has been updated" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Issue not found" }
delete /hold/issues/{issueId}
Delete a particular Issue given its id.
URI Parameters
- issueId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The Issue has been deleted" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Issue not found" }
Entity representing a Issue form metadata for update
Get form metadata for updating an existing Issue.
get /hold/issues/{issueId}/metadata
Get form metadata for updating an existing Issue.
URI Parameters
- issueId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"$schema": "http://json-schema.org/draft/2019-9/schema#",
"title": "Issue",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this issue, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this issue, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this issue for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Issue.Issue:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this issue",
"linked": false
},
"description": {
"description": "The description of this issue.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Issue.Issue:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this issue",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this issue. Default type set by system unless specified in query parameter on initial post.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this issue. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"bureauId": {
"description": "The resource that has authority for this issue.",
"type": "string",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "hold.Issue:bureau@dxtera.org",
"existingValue": null,
"elementLabel": "Bureau",
"instructions": "Enter the Id of the bureau for this issue.",
"linked": false
}
}
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "issue not found" }
/hold/holds
Collection of Holds in a system, federation of systems, or in a default Oubliette.
Get all Holds in the system or default Oubliette.
Create a new Hold in the default Oubliette.
get /hold/holds
Get all Holds in the system or default Oubliette.
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "endReason", "issue", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all - keyword: (string)
The match string for keyword query
Example:
Hello%20World - displayName: (string)
The match string for displayName query
Example:
Hello%20World - description: (string)
The match string for description query
Example:
Hello%20World - genusTypeId: (string)
The id string to match a genusType
Example:
type.Type%3AexampleHoldType%40dxtera.org - parentGenusTypeId: (string)
The id string to match a parent genusType
Example:
type.Type%3AparentTypeExampleHoldType%40dxtera.org - recordTypeId: (string)
The id string to match a recordType
Example:
type.Type%3AexampleHoldType%40campusapi.org - fromDate: (string)
Get all holds from this date inclusive. Use with toDate to define date range query.
Example:
2020-10-03 - toDate: (string)
Get all holds up to this date inclusive. Use with fromDate to define date range query.
Example:
2020-12-18 - oublietteId: (string)
The id string to match a oubliette
Example:
hold.Oubliette%3A8374%40base.url
HTTP status code 200
Headers
- x-total-count: required(number)
The total count of records currently available
Example:
152803
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Hold:452@base.url",
"uri": "http://base.url/open/campusapi/hold/hold/hold.Hold%3A452%40base.url",
"displayName": "Display Name of this Hold",
"description": "The description of this Hold",
"genusTypeId": "type.Type:defaultHoldType@base.url",
"recordTypeIds": [ "type.Type:exampleHoldRecordType@campusapi.org", "..."],
"startDate": "2020-10-03T06:30:00.000Z",
"endDate": "2020-12-18T19:30:00.000Z",
"endReasonId": "process.State:452@base.url",
"issueId": "hold.Issue:9117@base.url"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
post /hold/holds
Create a new Hold in the default Oubliette.
Query Parameters
- oublietteId: (string)
specify in which oubliette to create this hold
Example:
hold.Oubliette%3A8374%40base.url
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Hold",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this hold. This id is provided solely by the underlying implementation and is not set on POST and cannot be changed. An id included on POST will result in an error.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this hold. This URI is provided solely by the underlying implementation and is not set on POST and cannot be changed. A uri included on POST will result in an error.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this hold for display.",
"type": "string"
},
"description": {
"description": "The description of this hold.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this hold. Default type set by system unless specified in query parameter.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this hold. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"startDate": {
"description": "The starting date of this hold.",
"type": "string",
"format": "date-time"
},
"endDate": {
"description": "The ending date of this hold.",
"type": "string",
"format": "date-time"
},
"endReasonId": {
"description": "The reason this hold ended.",
"type": "string",
"format": "osid-id"
}
}
}Example:
{
"displayName": "Display Name of this Hold",
"description": "The description of this Hold",
"startDate": "2020-10-03T06:30:00.000Z",
"endDate": "2020-12-18T19:30:00.000Z",
"endReasonId": "process.State:7236@base.url",
"issueId": "hold.Issue:5494@base.url"
}
Query the collection of Holds in a system, federation of systems, or in a default oubliette by posting a Query object.
Submit a query using a HoldQuery object.
post /hold/holds/hold-query
Submit a query using a HoldQuery object.
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "endReason", "issue", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "HoldQuery",
"type": "object",
"properties": {
"matchIds": {
"description": "List of Ids to match. Boolean OR performed among multiple Ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchKeywords": {
"description": "List keywords to match. Multiple keywords can be added to perform a boolean OR among them. A keyword may be applied to any of the elements defined in this object such as the display name, description or any attribute defined in or implemented by this object.",
"type": "array",
"items": {
"type": "object",
"properties": {
"keyword": {
"description": "keyword to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDisplayNames": {
"description": "List of displayName strings to match. Boolean OR performed among multiple displayNames.",
"type": "array",
"items": {
"type": "object",
"properties": {
"displayName": {
"description": "displayName to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDescriptions": {
"description": "List of discription strings to match. Boolean OR performed among multiple descriptions.",
"type": "array",
"items": {
"type": "object",
"properties": {
"description": {
"description": "description to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchGenusTypeIds": {
"description": "List of genus type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "genus type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchRecordTypeIds": {
"description": "List of record type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "record type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchSubjectIds": {
"description": "List of Ids to match an object with a relationships to the given subjects.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchJournalEntryIds": {
"description": "List of Ids match objects that have the given journal entries.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"journalEntryQueries": {
"description": "journaling.JournalEntryQueries to match journaling information. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "journal-entry-query"
}
},
"matchEffective": {
"description": "Match effective objects where the current date falls within the start and end dates inclusive. true to match any effective, false to match ineffective",
"type": "boolean"
},
"matchStartDate": {
"description": "Matches temporals whose start date falls in between the given dates inclusive.",
"type": "object",
"properties": {
"start": {
"description": "start of date range",
"type": "string",
"format": "date-time"
},
"end": {
"description": "end of date range",
"type": "string",
"format": "date-time"
},
"match": {
"description": "true if a positive match, false for negative match",
"type": "boolean"
}
}
},
"matchEndDate": {
"description": "Matches temporals whose end date falls in between the given dates inclusive.",
"type": "object",
"properties": {
"start": {
"description": "start of date range",
"type": "string",
"format": "date-time"
},
"end": {
"description": "end of date range",
"type": "string",
"format": "date-time"
},
"match": {
"description": "true if a positive match, false for negative match",
"type": "boolean"
}
}
},
"matchEndReasonIds": {
"description": "List of end reason Id's to match.",
"type": "array",
"items": {
"type": "object",
"properties": {
"stateId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"endReasonQueries": {
"description": "process.StateQueries to match end reason state. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "resource-query"
}
},
"matchAnyEndReason": {
"description": "Match end reasons with any value. true to match Holds with any end reason, false to match Holds with no end reason",
"type": "boolean"
},
"matchOublietteIds": {
"description": "List of Oubliette Id's to match.",
"type": "array",
"items": {
"type": "object",
"properties": {
"oublietteId": {
"description": "Oubliette id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"oublietteQueries": {
"description": "OublietteQueries to match Oubliette. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "oubliette-query"
}
}
}
}Example:
{
"matchDisplayNames": [
{
"displayName": "string to exclude",
"match": false
}
]
}HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Hold:452@base.url",
"uri": "http://base.url/open/campusapi/hold/hold/hold.Hold%3A452%40base.url",
"displayName": "Display Name of this Hold",
"description": "The description of this Hold",
"genusTypeId": "type.Type:defaultHoldType@base.url",
"recordTypeIds": [ "type.Type:exampleHoldRecordType@campusapi.org", "..."],
"startDate": "2020-10-03T06:30:00.000Z",
"endDate": "2020-12-18T19:30:00.000Z",
"endReasonId": "process.State:452@base.url",
"issueId": "hold.Issue:9117@base.url"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Create multiple new HoldBatch in the default Oubliette.
post /hold/holds/hold-batch
Create multiple new HoldBatch in the default Oubliette.
Query Parameters
- oublietteId: (string)
specify in which oubliette to create this hold
Example:
hold.Oubliette%3A8374%40base.url
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "HoldBatch",
"type": "array",
"Items": {
"type": "hold"
}
}Example:
[
{
"displayName": "Display Name of this Hold",
"description": "The description of this Hold",
"startDate": "2020-10-03T06:30:00.000Z",
"endDate": "2020-12-18T19:30:00.000Z",
"endReasonId": "process.State:9013@base.url",
"issueId": "hold.Issue:3766@base.url"
},
{
"...": "..."
}
]
Entity representing a Hold form metadata.
Get form metadata for creating a new Hold.
get /hold/holds/metadata
Get form metadata for creating a new Hold.
Query Parameters
- genusType: (string)
specify a particular hold type to create
Example:
type.Type%3AexampleHoldType%40dxtera.org - recordType: (array of )
specify support for one or more hold record types
Example:
[ "type.Type%3AexampleHoldRecordType%40campusapi.org", "..." ] - oublietteId: (string)
specify in which oubliette to create this hold
Example:
hold.Oubliette%3A8374%40base.url
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"$schema": "http://json-schema.org/draft/2019-9/schema#",
"title": "Hold",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this hold, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this hold, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this hold for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Hold.Hold:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this hold",
"linked": false
},
"description": {
"description": "The description of this hold.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Hold.Hold:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this hold",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this hold. Default type set by system unless specified in query parameter on initial post.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this hold. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"startDate": {
"description": "The starting date of this hold.",
"type": "string",
"format": "date-time",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Hold.Hold:startDate@base.url",
"existingValue": "2020-10-03T08:00:00.000Z",
"elementLabel": "Start Date",
"instructions": "Enter a starting date for this hold",
"linked": false
},
"endDate": {
"description": "The ending date of this hold.",
"type": "string",
"format": "date-time",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Hold.Hold:endDate@base.url",
"existingValue": "2020-12-18T17:00:00.000Z",
"elementLabel": "End Date",
"instructions": "Enter an ending date for this hold",
"linked": false
},
"endReasonId": {
"description": "The reason this hold ended. A process/State object.",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Hold.Hold:endReason@base.url",
"existingValue": "process.State:1860@base.url",
"elementLabel": "End Reason",
"instructions": "Select the reason this hold ended",
"linked": false
}
}
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Entity representing a Hold
Get a particular Hold given its id.
Update a particular Hold given its id.
Delete a particular Hold given its id.
get /hold/holds/{holdId}
Get a particular Hold given its id.
URI Parameters
- holdId: required(string)
Query Parameters
- expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "endReason", "issue", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"id": "hold.Hold:452@base.url",
"uri": "http://base.url/open/campusapi/hold/hold/hold.Hold%3A452%40base.url",
"displayName": "Display Name of this Hold",
"description": "The description of this Hold",
"genusTypeId": "type.Type:defaultHoldType@base.url",
"recordTypeIds": [ "type.Type:exampleHoldRecordType@campusapi.org", "..."],
"startDate": "2020-10-03T06:30:00.000Z",
"endDate": "2020-12-18T19:30:00.000Z",
"endReasonId": "process.State:452@base.url",
"issueId": "hold.Issue:9117@base.url"
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Hold not found" }
put /hold/holds/{holdId}
Update a particular Hold given its id.
URI Parameters
- holdId: required(string)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "HoldItem",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this hold. This id is provided solely by the underlying implementation and is not set on POST and cannot be changed. An id included on POST will result in an error.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this hold. This URI is provided solely by the underlying implementation and is not set on POST and cannot be changed. A uri included on POST will result in an error.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this hold for display.",
"type": "string"
},
"description": {
"description": "The description of this hold.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this hold. Default type set by system unless specified in query parameter.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this hold. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"startDate": {
"description": "The starting date of this hold.",
"type": "string",
"format": "date-time"
},
"endDate": {
"description": "The ending date of this hold.",
"type": "string",
"format": "date-time"
},
"endReasonId": {
"description": "The reason this hold ended.",
"type": "string",
"format": "osid-id"
}
}
}Example:
{
"displayName": "Display Name of this Hold",
"description": "The description of this Hold",
"startDate": "2020-10-03T06:30:00.000Z",
"endDate": "2020-12-18T19:30:00.000Z",
"endReasonId": "process.State:882@base.url",
"issueId": "hold.Issue:7673@base.url"
}
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The Hold has been updated" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Hold not found" }
delete /hold/holds/{holdId}
Delete a particular Hold given its id.
URI Parameters
- holdId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The Hold has been deleted" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Hold not found" }
Entity representing a Hold form metadata for update
Get form metadata for updating an existing Hold.
get /hold/holds/{holdId}/metadata
Get form metadata for updating an existing Hold.
URI Parameters
- holdId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"$schema": "http://json-schema.org/draft/2019-9/schema#",
"title": "Hold",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this hold, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this hold, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this hold for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Hold.Hold:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this hold",
"linked": false
},
"description": {
"description": "The description of this hold.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Hold.Hold:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this hold",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this hold. Default type set by system unless specified in query parameter on initial post.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this hold. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"startDate": {
"description": "The starting date of this hold.",
"type": "string",
"format": "date-time",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Hold.Hold:startDate@base.url",
"existingValue": "2020-10-03T08:00:00.000Z",
"elementLabel": "Start Date",
"instructions": "Enter a starting date for this hold",
"linked": false
},
"endDate": {
"description": "The ending date of this hold.",
"type": "string",
"format": "date-time",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Hold.Hold:endDate@base.url",
"existingValue": "2020-12-18T17:00:00.000Z",
"elementLabel": "End Date",
"instructions": "Enter an ending date for this hold",
"linked": false
},
"endReasonId": {
"description": "The reason this hold ended. A process/State object.",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Hold.Hold:endReason@base.url",
"existingValue": "process.State:1860@base.url",
"elementLabel": "End Reason",
"instructions": "Select the reason this hold ended",
"linked": false
}
}
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "hold not found" }
/hold/oubliettes
Collection of Oubliettes in a system or federation of systems.
Get all Oubliettes.
Create a new Oubliette.
get /hold/oubliettes
Get all Oubliettes.
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "provider", "branding", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all - keyword: (string)
The match string for keyword query
Example:
Hello%20World - displayName: (string)
The match string for displayName query
Example:
Hello%20World - description: (string)
The match string for description query
Example:
Hello%20World - genusTypeId: (string)
The id string to match a genusType
Example:
type.Type%3AexampleOublietteType%40dxtera.org - parentGenusTypeId: (string)
The id string to match a parent genusType
Example:
type.Type%3AparentTypeExampleOublietteType%40dxtera.org - recordTypeId: (string)
The id string to match a recordType
Example:
type.Type%3AexampleOublietteType%40campusapi.org - providerId: (string)
Id string to match provider.
Example:
resource.Resource%3A3007%40demo.dxtera.org - blockId: (string)
Get oubliettes mapped to this block.
Example:
hold.Block%3A180%40demo.dxtera.org - issueId: (string)
Get oubliettes mapped to this issue.
Example:
hold.Issue%3A180%40demo.dxtera.org - holdId: (string)
Get oubliettes mapped to this hold.
Example:
hold.Hold%3A144%40demo.dxtera.org
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Oubliette:7624@base.url",
"uri": "http://base.url/open/campusapi/hold/oubliette/hold.Oubliette%3A7624%40base.url",
"displayName": "Display Name of this Oubliette",
"description": "The description of this Oubliette",
"genusTypeId": "type.Type:defaultOublietteType@base.url",
"recordTypeIds": [ "type.Type:exampleOublietteRecordType@campusapi.org", "..."],
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:Oubliette@base.url",
"license": "The license that applies to this Oubliette"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
post /hold/oubliettes
Create a new Oubliette.
Query Parameters
- genusType: (string)
specify a particular oubliette type to create
Example:
type.Type%3AexampleOublietteType%40dxtera.org - recordType: (array of )
specify support for one or more oubliette record types
Example:
[ "type.Type%3AexampleOublietteRecordType%40campusapi.org", "..." ]
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Oubliette",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this oubliette. This id is provided solely by the underlying implementation and is not set on POST and cannot be changed. An id included on POST will result in an error.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this oubliette. This URI is provided solely by the underlying implementation and is not set on POST and cannot be changed. A uri included on POST will result in an error.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this oubliette for display.",
"type": "string"
},
"description": {
"description": "The description of this oubliette.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this oubliette. Default type set by system unless specified in query parameter.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this oubliette. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"providerId": {
"description": "The provider of this oubliette.",
"type": "string",
"format": "osid-id"
},
"brandingIds": {
"description": "The branding of this oubliette. A collection of Assets.",
"type": "array",
"items" : {
"type": "string",
"format": "osid-id"
}
},
"license": {
"description": "The licensing that applies to this oubliette.",
"type": "string"
}
}
}Example:
{
"displayName": "Display Name of this Oubliette",
"description": "The description of this Oubliette",
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:Oubliette@base.url",
"license": "The license that applies to this Oubliette"
}
Query the collection of Oubliettes in a system, federation of systems, or in a default oubliette by posting a Query object.
Submit a query using a OublietteQuery object.
post /hold/oubliettes/oubliette-query
Submit a query using a OublietteQuery object.
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "provider", "branding", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "OublietteQuery",
"type": "object",
"properties": {
"matchIds": {
"description": "List of Ids to match. Boolean OR performed among multiple Ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchKeywords": {
"description": "List keywords to match. Multiple keywords can be added to perform a boolean OR among them. A keyword may be applied to any of the elements defined in this object such as the display name, description or any attribute defined in or implemented by this object.",
"type": "array",
"items": {
"type": "object",
"properties": {
"keyword": {
"description": "keyword to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDisplayNames": {
"description": "List of displayName strings to match. Boolean OR performed among multiple displayNames.",
"type": "array",
"items": {
"type": "object",
"properties": {
"displayName": {
"description": "displayName to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDescriptions": {
"description": "List of discription strings to match. Boolean OR performed among multiple descriptions.",
"type": "array",
"items": {
"type": "object",
"properties": {
"description": {
"description": "description to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchGenusTypeIds": {
"description": "List of genus type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "genus type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchRecordTypeIds": {
"description": "List of record type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "record type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchSubjectIds": {
"description": "List of Ids to match an object with a relationships to the given subjects.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchJournalEntryIds": {
"description": "List of Ids match objects that have the given journal entries.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"journalEntryQueries": {
"description": "journaling.JournalEntryQueries to match journaling information. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "journal-entry-query"
}
},
"matchProviderIds": {
"description": "List of provider Ids to match.",
"type": "array",
"items": {
"type": "object",
"properties": {
"stateId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"providerQueries": {
"description": "providerQueries to match the provider. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "resource-query"
}
},
"matchAnyProvider": {
"description": "Match providers with any value. true to match Oubliette with any provider, false to match Oubliette with no provider",
"type": "boolean"
},
"matchBrandingIds": {
"description": "List of branding asset Ids to match.",
"type": "array",
"items": {
"type": "object",
"properties": {
"stateId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"brandingQueries": {
"description": "repository.AssetQueries to match the branding. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "asset-query"
}
},
"matchAnyBranding": {
"description": "Match brandingss with any value. true to match Oubliette with any branding, false to match Oubliette with no branding",
"type": "boolean"
},
"matchlicenses": {
"description": "List of license strings to match. Boolean OR performed among multiple descriptions.",
"type": "array",
"items": {
"type": "object",
"properties": {
"license": {
"description": "license to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchOublietteIds": {
"description": "List of Oubliette Id's to match.",
"type": "array",
"items": {
"type": "object",
"properties": {
"oublietteId": {
"description": "Oubliette id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"oublietteQueries": {
"description": "OublietteQueries to match Oubliette. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "oubliette-query"
}
}
}
}Example:
{
"matchDisplayNames": [
{
"displayName": "string to exclude",
"match": false
}
]
}HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Oubliette:7624@base.url",
"uri": "http://base.url/open/campusapi/hold/oubliette/hold.Oubliette%3A7624%40base.url",
"displayName": "Display Name of this Oubliette",
"description": "The description of this Oubliette",
"genusTypeId": "type.Type:defaultOublietteType@base.url",
"recordTypeIds": [ "type.Type:exampleOublietteRecordType@campusapi.org", "..."],
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:Oubliette@base.url",
"license": "The license that applies to this Oubliette"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Entity representing a Oubliette form metadata.
Get form metadata for creating a new Oubliette.
get /hold/oubliettes/metadata
Get form metadata for creating a new Oubliette.
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"$schema": "http://json-schema.org/draft/2019-9/schema#",
"title": "Oubliette",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this oubliette, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this oubliette, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this oubliette for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Oubliette.Oubliette:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this oubliette",
"linked": false
},
"description": {
"description": "The description of this oubliette.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Oubliette.Oubliette:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this oubliette",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this oubliette. Default type set by system unless specified in query parameter on initial post.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this oubliette. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"providerId": {
"description": "The provider of this oubliette.",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Oubliette.Oubliette:provider@base.url",
"existingValue": "",
"elementLabel": "Provider",
"instructions": "Enter the provider of this oubliette",
"linked": false
},
"brandingIds": {
"description": "The branding of this oubliette. A list of Assets.",
"type": "array",
"items" : {
"type": "string",
"format": "osid-id",
"pattern": "",
"enum": []
},
"read-only": false,
"default": [],
"elementId": "Oubliette.Oubliette:branding@base.url",
"existingValue": "",
"elementLabel": "Branding",
"instructions": "Enter the branding images for this oubliette",
"linked": false
},
"license": {
"description": "The licensing that applies to this oubliette.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Oubliette.Oubliette:license@base.url",
"existingValue": "The Existing License",
"elementLabel": "License",
"instructions": "Include a license for this oubliette",
"linked": false
}
}
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
The root Oubliettes in the Oubliette hierarchy. A node with no parents is an orphan. While all Oubliette Ids are known to the hierarchy, an orphan does not appear in the hierarchy unless explicitly added as a root node or child of another node.
Get all root root-oubliettes
get /hold/oubliettes/root-oubliettes
Get all root root-oubliettes
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "provider", "branding", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Oubliette:7624@base.url",
"uri": "http://base.url/open/campusapi/hold/oubliette/hold.Oubliette%3A7624%40base.url",
"displayName": "Display Name of this Oubliette",
"description": "The description of this Oubliette",
"genusTypeId": "type.Type:defaultOublietteType@base.url",
"recordTypeIds": [ "type.Type:exampleOublietteRecordType@campusapi.org", "..."],
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:Oubliette@base.url",
"license": "The license that applies to this Oubliette"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Add the given Oubliette as a root in the Oubliette hierarchy
Remove the given Oubliette as a root in the Oubliette hierarchy.
put /hold/oubliettes/root-oubliettes/{oublietteId}
Add the given Oubliette as a root in the Oubliette hierarchy
URI Parameters
- oublietteId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The Oubliette has been added as a root" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{ "message": "Oubliette not found" }
delete /hold/oubliettes/root-oubliettes/{oublietteId}
Remove the given Oubliette as a root in the Oubliette hierarchy.
URI Parameters
- oublietteId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The Oubliette has been removed as a root from the hierarchy" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{ "message": "Oubliette not found" }
Get parent Oubliettes for the given Oubliette in the hierarchy.
get /hold/oubliettes/root-oubliettes/parents
Get parent Oubliettes for the given Oubliette in the hierarchy.
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "provider", "branding", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Oubliette:7624@base.url",
"uri": "http://base.url/open/campusapi/hold/oubliette/hold.Oubliette%3A7624%40base.url",
"displayName": "Display Name of this Oubliette",
"description": "The description of this Oubliette",
"genusTypeId": "type.Type:defaultOublietteType@base.url",
"recordTypeIds": [ "type.Type:exampleOublietteRecordType@campusapi.org", "..."],
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:Oubliette@base.url",
"license": "The license that applies to this Oubliette"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Get child Oubliettes for the given Oubliette in the hierarchy.
get /hold/oubliettes/root-oubliettes/children
Get child Oubliettes for the given Oubliette in the hierarchy.
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "provider", "branding", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Oubliette:7624@base.url",
"uri": "http://base.url/open/campusapi/hold/oubliette/hold.Oubliette%3A7624%40base.url",
"displayName": "Display Name of this Oubliette",
"description": "The description of this Oubliette",
"genusTypeId": "type.Type:defaultOublietteType@base.url",
"recordTypeIds": [ "type.Type:exampleOublietteRecordType@campusapi.org", "..."],
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:Oubliette@base.url",
"license": "The license that applies to this Oubliette"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Add Oubliette as child of the given Oubliette in the hierarchy.
Remove the given Oubliette as a child of the given Oubliette in the hierarchy.
put /hold/oubliettes/root-oubliettes/children/{childId}
Add Oubliette as child of the given Oubliette in the hierarchy.
URI Parameters
- childId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The child Oubliette has been added to the hierarchy" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{ "message": "oubliette not found" }
delete /hold/oubliettes/root-oubliettes/children/{childId}
Remove the given Oubliette as a child of the given Oubliette in the hierarchy.
Entity representing a Oubliette
Get a particular Oubliette given its id.
Update a particular Oubliette given its id.
Delete a particular Oubliette given its id.
get /hold/oubliettes/{oublietteId}
Get a particular Oubliette given its id.
URI Parameters
- oublietteId: required(string)
Query Parameters
- expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "provider", "branding", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"id": "hold.Oubliette:7624@base.url",
"uri": "http://base.url/open/campusapi/hold/oubliette/hold.Oubliette%3A7624%40base.url",
"displayName": "Display Name of this Oubliette",
"description": "The description of this Oubliette",
"genusTypeId": "type.Type:defaultOublietteType@base.url",
"recordTypeIds": [ "type.Type:exampleOublietteRecordType@campusapi.org", "..."],
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:Oubliette@base.url",
"license": "The license that applies to this Oubliette"
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Oubliette not found" }
put /hold/oubliettes/{oublietteId}
Update a particular Oubliette given its id.
URI Parameters
- oublietteId: required(string)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "OublietteItem",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this oubliette. This id is provided solely by the underlying implementation and is not set on POST and cannot be changed. An id included on POST will result in an error.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this oubliette. This URI is provided solely by the underlying implementation and is not set on POST and cannot be changed. A uri included on POST will result in an error.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this oubliette for display.",
"type": "string"
},
"description": {
"description": "The description of this oubliette.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this oubliette. Default type set by system unless specified in query parameter.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this oubliette. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"providerId": {
"description": "The provider of this oubliette.",
"type": "string",
"format": "osid-id"
},
"brandingIds": {
"description": "The branding of this oubliette. A collection of Assets.",
"type": "array",
"items" : {
"type": "string",
"format": "osid-id"
}
},
"license": {
"description": "The licensing that applies to this oubliette.",
"type": "string"
}
}
}Example:
{
"displayName": "Display Name of this Oubliette",
"description": "The description of this Oubliette",
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:Oubliette@base.url",
"license": "The license that applies to this Oubliette"
}
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The Oubliette has been updated" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Oubliette not found" }
delete /hold/oubliettes/{oublietteId}
Delete a particular Oubliette given its id.
URI Parameters
- oublietteId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The Oubliette has been deleted" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Oubliette not found" }
Entity representing a Oubliette form metadata for update
Get form metadata for updating an existing Oubliette.
get /hold/oubliettes/{oublietteId}/metadata
Get form metadata for updating an existing Oubliette.
URI Parameters
- oublietteId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"$schema": "http://json-schema.org/draft/2019-9/schema#",
"title": "Oubliette",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this oubliette, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this oubliette, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this oubliette for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Oubliette.Oubliette:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this oubliette",
"linked": false
},
"description": {
"description": "The description of this oubliette.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Oubliette.Oubliette:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this oubliette",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this oubliette. Default type set by system unless specified in query parameter on initial post.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"recordTypeIds": {
"description": "Type Ids of record types available on this oubliette. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere.",
"type": "array",
"items": {
"type": "string",
"format": "osid-id"
},
"readOnly": true
},
"providerId": {
"description": "The provider of this oubliette.",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Oubliette.Oubliette:provider@base.url",
"existingValue": "",
"elementLabel": "Provider",
"instructions": "Enter the provider of this oubliette",
"linked": false
},
"brandingIds": {
"description": "The branding of this oubliette. A list of Assets.",
"type": "array",
"items" : {
"type": "string",
"format": "osid-id",
"pattern": "",
"enum": []
},
"read-only": false,
"default": [],
"elementId": "Oubliette.Oubliette:branding@base.url",
"existingValue": "",
"elementLabel": "Branding",
"instructions": "Enter the branding images for this oubliette",
"linked": false
},
"license": {
"description": "The licensing that applies to this oubliette.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Oubliette.Oubliette:license@base.url",
"existingValue": "The Existing License",
"elementLabel": "License",
"instructions": "Include a license for this oubliette",
"linked": false
}
}
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "oubliette not found" }
Get all Blocks in this Oubliette
get /hold/oubliettes/{oublietteId}/blocks
Get all Blocks in this Oubliette
URI Parameters
- oublietteId: required(string)
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "issues", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all - keyword: (string)
The match string for keyword query
Example:
Hello%20World - displayName: (string)
The match string for displayName query
Example:
Hello%20World - description: (string)
The match string for description query
Example:
Hello%20World - genusTypeId: (string)
The id string to match a genusType
Example:
type.Type%3AexampleBlockType%40dxtera.org - parentGenusTypeId: (string)
The id string to match a parent genusType
Example:
type.Type%3AparentTypeExampleBlockType%40dxtera.org - recordTypeId: (string)
The id string to match a recordType
Example:
type.Type%3AexampleBlockType%40campusapi.org
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Block:632@base.url",
"uri": "http://base.url/open/campusapi/hold/block/hold.Block%3A632%40base.url",
"displayName": "Display Name of this Block",
"description": "The description of this Block",
"genusTypeId": "type.Type:defaultBlockType@base.url",
"recordTypeIds": [ "type.Type:exampleBlockRecordType@campusapi.org", "..."],
"issueIds": [ "hold.Issue:8510@base.url", "..." ]
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Add the given Block to this Oubliette
Remove the given Block from the Oubliette.
put /hold/oubliettes/{oublietteId}/blocks/{blockId}
Add the given Block to this Oubliette
URI Parameters
- oublietteId: required(string)
- blockId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "Block has been added to Oubliette" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{ "message": "Block not found" }
delete /hold/oubliettes/{oublietteId}/blocks/{blockId}
Remove the given Block from the Oubliette.
URI Parameters
- oublietteId: required(string)
- blockId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "Block has been removed" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{ "message": "Block not found" }
Define and inspect the BlockQuery related to a "smart" Oubliette. A smart Oubliette is a dynamic Oubliette whose cataloged objects are defined through queries.
Apply the provided BlockQuery to this Oubliette to create a dynamic smart Oubliette
Get the BlockQuery associated with this smart Oubliette.
post /hold/oubliettes/{oublietteId}/block-query
Apply the provided BlockQuery to this Oubliette to create a dynamic smart Oubliette
URI Parameters
- oublietteId: required(string)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "BlockQuery",
"type": "object",
"properties": {
"matchIds": {
"description": "List of Ids to match. Boolean OR performed among multiple Ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchKeywords": {
"description": "List keywords to match. Multiple keywords can be added to perform a boolean OR among them. A keyword may be applied to any of the elements defined in this object such as the display name, description or any attribute defined in or implemented by this object.",
"type": "array",
"items": {
"type": "object",
"properties": {
"keyword": {
"description": "keyword to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDisplayNames": {
"description": "List of displayName strings to match. Boolean OR performed among multiple displayNames.",
"type": "array",
"items": {
"type": "object",
"properties": {
"displayName": {
"description": "displayName to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDescriptions": {
"description": "List of discription strings to match. Boolean OR performed among multiple descriptions.",
"type": "array",
"items": {
"type": "object",
"properties": {
"description": {
"description": "description to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchGenusTypeIds": {
"description": "List of genus type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "genus type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchRecordTypeIds": {
"description": "List of record type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "record type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchSubjectIds": {
"description": "List of Ids to match an object with a relationships to the given subjects.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchJournalEntryIds": {
"description": "List of Ids match objects that have the given journal entries.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"journalEntryQueries": {
"description": "journaling.JournalEntryQueries to match journaling information. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "journal-entry-query"
}
},
"matchIssueIds": {
"description": "List of Issue Ids for this query to match issues.",
"type": "array",
"items": {
"type": "object",
"properties": {
"issueId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"issueQueries": {
"description": "hold.IssueQueries to match the Issues. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "issue-query"
}
},
"matchAnyIssue": {
"description": "Match issues with any value. true to match Blocks with any issues, false to match Blocks with no issues",
"type": "boolean"
},
"matchOublietteIds": {
"description": "List of Oubliette Id's to match.",
"type": "array",
"items": {
"type": "object",
"properties": {
"oublietteId": {
"description": "Oubliette id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"oublietteQueries": {
"description": "OublietteQueries to match Oubliette. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "oubliette-query"
}
}
}
}Example:
{
"matchDisplayNames": [
{
"displayName": "string to exclude",
"match": false
}
]
}get /hold/oubliettes/{oublietteId}/block-query
Get the BlockQuery associated with this smart Oubliette.
URI Parameters
- oublietteId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"matchDisplayNames": [
{
"displayName": "string to exclude",
"match": false
}
]
}HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Oubliette not found" }
Get all Issues in this Oubliette
get /hold/oubliettes/{oublietteId}/issues
Get all Issues in this Oubliette
URI Parameters
- oublietteId: required(string)
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "bureau", "assignedResource", "blockerIssues", "duplicateIssues", "branchedIssue", "reopener", "reopeningAgent", "resolver", "resolvingAgent", "resolutionType", "closer", "closingAgent", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all - keyword: (string)
The match string for keyword query
Example:
Hello%20World - displayName: (string)
The match string for displayName query
Example:
Hello%20World - description: (string)
The match string for description query
Example:
Hello%20World - genusTypeId: (string)
The id string to match a genusType
Example:
type.Type%3AexampleIssueType%40dxtera.org - parentGenusTypeId: (string)
The id string to match a parent genusType
Example:
type.Type%3AparentTypeExampleIssueType%40dxtera.org - recordTypeId: (string)
The id string to match a recordType
Example:
type.Type%3AexampleIssueType%40campusapi.org
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Issue:7382@base.url",
"uri": "http://base.url/open/campusapi/hold/issue/hold.Issue%3A7382%40base.url",
"displayName": "Display Name of this Issue",
"description": "The description of this Issue",
"genusTypeId": "type.Type:defaultIssueType@base.url",
"recordTypeIds": [ "type.Type:exampleIssueRecordType@campusapi.org", "..."],
"bureauId": "resource.Resource:2710@base.url",
"assignedResourceId": ":9722@base.url",
"blockerIssueIds": [ ":9645@base.url", "..." ],
"duplicateIssueIds": [ ":6114@base.url", "..." ],
"branchedIssueId": ":846@base.url",
"reopenerId": ":6035@base.url",
"reopeningAgentId": ":5783@base.url",
"reopenedDate": "2020-10-03T08:00:00.000Z",
"resolverId": ":7173@base.url",
"resolvingAgentId": ":3892@base.url",
"resolvedDate": "2020-07-21T00:00:00.000Z",
"resolutionType": "type.Type:8957@base.url",
"closerId": ":4975@base.url",
"closingAgentId": ":1446@base.url",
"closedDate": "2020-12-18T17:00:00.000Z"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Add the given Issue to this Oubliette
Remove the given Issue from the Oubliette.
put /hold/oubliettes/{oublietteId}/issues/{issueId}
Add the given Issue to this Oubliette
URI Parameters
- oublietteId: required(string)
- issueId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "Issue has been added to Oubliette" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{ "message": "Issue not found" }
delete /hold/oubliettes/{oublietteId}/issues/{issueId}
Remove the given Issue from the Oubliette.
URI Parameters
- oublietteId: required(string)
- issueId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "Issue has been removed" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{ "message": "Issue not found" }
Define and inspect the IssueQuery related to a "smart" Oubliette. A smart Oubliette is a dynamic Oubliette whose cataloged objects are defined through queries.
Apply the provided IssueQuery to this Oubliette to create a dynamic smart Oubliette
Get the IssueQuery associated with this smart Oubliette.
post /hold/oubliettes/{oublietteId}/issue-query
Apply the provided IssueQuery to this Oubliette to create a dynamic smart Oubliette
URI Parameters
- oublietteId: required(string)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "IssueQuery",
"type": "object",
"properties": {
"matchIds": {
"description": "List of Ids to match. Boolean OR performed among multiple Ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchKeywords": {
"description": "List keywords to match. Multiple keywords can be added to perform a boolean OR among them. A keyword may be applied to any of the elements defined in this object such as the display name, description or any attribute defined in or implemented by this object.",
"type": "array",
"items": {
"type": "object",
"properties": {
"keyword": {
"description": "keyword to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDisplayNames": {
"description": "List of displayName strings to match. Boolean OR performed among multiple displayNames.",
"type": "array",
"items": {
"type": "object",
"properties": {
"displayName": {
"description": "displayName to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDescriptions": {
"description": "List of discription strings to match. Boolean OR performed among multiple descriptions.",
"type": "array",
"items": {
"type": "object",
"properties": {
"description": {
"description": "description to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchGenusTypeIds": {
"description": "List of genus type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "genus type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchRecordTypeIds": {
"description": "List of record type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "record type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchSubjectIds": {
"description": "List of Ids to match an object with a relationships to the given subjects.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchJournalEntryIds": {
"description": "List of Ids match objects that have the given journal entries.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"journalEntryQueries": {
"description": "journaling.JournalEntryQueries to match journaling information. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "journal-entry-query"
}
},
"matchBureauIds": {
"description": "List of Resource Ids for this query to match bureau.",
"type": "array",
"items": {
"type": "object",
"properties": {
"bureauId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"bureauQueries": {
"description": "resource.ResourceQueries to match the Bureau. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "resource-query"
}
},
"matchAnyBureau": {
"description": "Match bureau with any value. true to match Issues with any bureau, false to match Issues with no bureau",
"type": "boolean"
},
"matchOublietteIds": {
"description": "List of Oubliette Id's to match.",
"type": "array",
"items": {
"type": "object",
"properties": {
"oublietteId": {
"description": "Oubliette id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"oublietteQueries": {
"description": "OublietteQueries to match Oubliette. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "oubliette-query"
}
}
}
}Example:
{
"matchDisplayNames": [
{
"displayName": "string to exclude",
"match": false
}
]
}get /hold/oubliettes/{oublietteId}/issue-query
Get the IssueQuery associated with this smart Oubliette.
URI Parameters
- oublietteId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"matchDisplayNames": [
{
"displayName": "string to exclude",
"match": false
}
]
}HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Oubliette not found" }
Get all Holds in this Oubliette
get /hold/oubliettes/{oublietteId}/holds
Get all Holds in this Oubliette
URI Parameters
- oublietteId: required(string)
Query Parameters
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20 - limit: (integer - default: 10)
Limit the number of elements on the response
Example:
80 - expand: (string)
Expand object or type for named attribute: "genusType", "recordType", "endReason", "issue", or "all" to expand all referenced objects or types. This parameter can be repeated to expand multiples.
Example:
all - keyword: (string)
The match string for keyword query
Example:
Hello%20World - displayName: (string)
The match string for displayName query
Example:
Hello%20World - description: (string)
The match string for description query
Example:
Hello%20World - genusTypeId: (string)
The id string to match a genusType
Example:
type.Type%3AexampleHoldType%40dxtera.org - parentGenusTypeId: (string)
The id string to match a parent genusType
Example:
type.Type%3AparentTypeExampleHoldType%40dxtera.org - recordTypeId: (string)
The id string to match a recordType
Example:
type.Type%3AexampleHoldType%40campusapi.org
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "hold.Hold:452@base.url",
"uri": "http://base.url/open/campusapi/hold/hold/hold.Hold%3A452%40base.url",
"displayName": "Display Name of this Hold",
"description": "The description of this Hold",
"genusTypeId": "type.Type:defaultHoldType@base.url",
"recordTypeIds": [ "type.Type:exampleHoldRecordType@campusapi.org", "..."],
"startDate": "2020-10-03T06:30:00.000Z",
"endDate": "2020-12-18T19:30:00.000Z",
"endReasonId": "process.State:452@base.url",
"issueId": "hold.Issue:9117@base.url"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Add the given Hold to this Oubliette
Remove the given Hold from the Oubliette.
put /hold/oubliettes/{oublietteId}/holds/{holdId}
Add the given Hold to this Oubliette
URI Parameters
- oublietteId: required(string)
- holdId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "Hold has been added to Oubliette" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{ "message": "Hold not found" }
delete /hold/oubliettes/{oublietteId}/holds/{holdId}
Remove the given Hold from the Oubliette.
URI Parameters
- oublietteId: required(string)
- holdId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "Hold has been removed" }
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{ "message": "Hold not found" }
Define and inspect the HoldQuery related to a "smart" Oubliette. A smart Oubliette is a dynamic Oubliette whose cataloged objects are defined through queries.
Apply the provided HoldQuery to this Oubliette to create a dynamic smart Oubliette
Get the HoldQuery associated with this smart Oubliette.
post /hold/oubliettes/{oublietteId}/hold-query
Apply the provided HoldQuery to this Oubliette to create a dynamic smart Oubliette
URI Parameters
- oublietteId: required(string)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "HoldQuery",
"type": "object",
"properties": {
"matchIds": {
"description": "List of Ids to match. Boolean OR performed among multiple Ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchKeywords": {
"description": "List keywords to match. Multiple keywords can be added to perform a boolean OR among them. A keyword may be applied to any of the elements defined in this object such as the display name, description or any attribute defined in or implemented by this object.",
"type": "array",
"items": {
"type": "object",
"properties": {
"keyword": {
"description": "keyword to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDisplayNames": {
"description": "List of displayName strings to match. Boolean OR performed among multiple displayNames.",
"type": "array",
"items": {
"type": "object",
"properties": {
"displayName": {
"description": "displayName to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchDescriptions": {
"description": "List of discription strings to match. Boolean OR performed among multiple descriptions.",
"type": "array",
"items": {
"type": "object",
"properties": {
"description": {
"description": "description to match",
"type": "string"
},
"stringMatchType": {
"description": "the string match type",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchGenusTypeIds": {
"description": "List of genus type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "genus type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchRecordTypeIds": {
"description": "List of record type ids to match. Boolean OR performed among multiple ids.",
"type": "array",
"items": {
"type": "object",
"properties": {
"genusTypeid": {
"description": "record type id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchSubjectIds": {
"description": "List of Ids to match an object with a relationships to the given subjects.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"matchJournalEntryIds": {
"description": "List of Ids match objects that have the given journal entries.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sponsorId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"journalEntryQueries": {
"description": "journaling.JournalEntryQueries to match journaling information. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "journal-entry-query"
}
},
"matchEffective": {
"description": "Match effective objects where the current date falls within the start and end dates inclusive. true to match any effective, false to match ineffective",
"type": "boolean"
},
"matchStartDate": {
"description": "Matches temporals whose start date falls in between the given dates inclusive.",
"type": "object",
"properties": {
"start": {
"description": "start of date range",
"type": "string",
"format": "date-time"
},
"end": {
"description": "end of date range",
"type": "string",
"format": "date-time"
},
"match": {
"description": "true if a positive match, false for negative match",
"type": "boolean"
}
}
},
"matchEndDate": {
"description": "Matches temporals whose end date falls in between the given dates inclusive.",
"type": "object",
"properties": {
"start": {
"description": "start of date range",
"type": "string",
"format": "date-time"
},
"end": {
"description": "end of date range",
"type": "string",
"format": "date-time"
},
"match": {
"description": "true if a positive match, false for negative match",
"type": "boolean"
}
}
},
"matchEndReasonIds": {
"description": "List of end reason Id's to match.",
"type": "array",
"items": {
"type": "object",
"properties": {
"stateId": {
"description": "id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"endReasonQueries": {
"description": "process.StateQueries to match end reason state. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "resource-query"
}
},
"matchAnyEndReason": {
"description": "Match end reasons with any value. true to match Holds with any end reason, false to match Holds with no end reason",
"type": "boolean"
},
"matchOublietteIds": {
"description": "List of Oubliette Id's to match.",
"type": "array",
"items": {
"type": "object",
"properties": {
"oublietteId": {
"description": "Oubliette id to match",
"type": "string",
"format": "osid-id"
},
"match": {
"description": "true for a positive match, false for a negative match",
"type": "boolean"
}
}
}
},
"oublietteQueries": {
"description": "OublietteQueries to match Oubliette. Each query performs a boolean OR.",
"type": "array",
"items": {
"type": "oubliette-query"
}
}
}
}Example:
{
"matchDisplayNames": [
{
"displayName": "string to exclude",
"match": false
}
]
}get /hold/oubliettes/{oublietteId}/hold-query
Get the HoldQuery associated with this smart Oubliette.
URI Parameters
- oublietteId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"matchDisplayNames": [
{
"displayName": "string to exclude",
"match": false
}
]
}HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
HTTP status code 404
Body
Media type: application/json
Type: any
Example:
{"message": "Oubliette not found" }