CampusAPI Contact Services API documentation version 1.0.2
Based on OSID version 3.0.0
https://base.url/contact
Overview
The Contact package defines auxiliary services that relates contact information to other objects.
This package includes the following entities:
Contacts
A Contact is relationship between an Address and a reference Id. Contacts are time-variant which allow Addresses to become effective based on schedules.
Contacts have an addressee. Addressees are Resources that indicate to whom or what should be contacted. In the case of making contacts for external Resources, the reference Id and the addressee Resource Id may be the same.
Example: An Address exists for Tom: tom@earth.com. A service Consumer wishing to contact Tom does by looking up effective Contacts for Tom as a reference and then retrieving the related Addresses for the Contacts.
A Contact exists for a startup company (reference) where the addressee is Scott with an Address at 162 School Street. Another Contact exists with an addressee for Sarah also with an Address at 162 School Street. A single Address can be used for 162 School Street with an address Resource of Scott & Sarah's House. Gypsy can be added by creating a Contact referencing the dog related to the same Address.
Field | Description | Type |
---|---|---|
id(read‑only) | The unique id of this contact, provided by system. | string(osid‑id) |
uri(read‑only) | The uri of this contact, provided by system. | string(uri) |
displayName | The name of this contact for display. | string |
description | The description of this contact. | string |
genusTypeId (read‑only) | Id of the immutable type of this contact. Default type set by system unless specified in query parameter. | string(osid‑id) |
recordTypeIds (read‑only) | Type Ids of record types available on this contact. 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 contact. | string(date‑time) |
endDate | The ending date of this contact. | string(date‑time) |
endReasonId | The reason this contact ended. References a process.State object. | string(osid‑id) |
addressId (read‑only) | The address associated with this contact. References a contact.Address object. | string(osid‑id) |
referenceId (read‑only) | The reference associated with this contact. References an id.Id object. | string(osid‑id) |
addresseeId | The addressee. References a resource.Resource object | string(osid‑id) |
Addresses
An Address is an entity for a the address of a Resource. Specific breakdowns of an Address may be made available through different address types but and the Address exposes a text form of the address.
Field | Description | Type |
---|---|---|
id(read‑only) | The unique id of this address, provided by system. | string(osid‑id) |
uri(read‑only) | The uri of this address, provided by system. | string(uri) |
displayName | The name of this address for display. | string |
description | The description of this address. | string |
genusTypeId (read‑only) | Id of the immutable type of this address. Default type set by system unless specified in query parameter. | string(osid‑id) |
recordTypeIds (read‑only) | Type Ids of record types available on this address. Record types define special attributes available on an object to support specific applications or classes of applications and are documented elsewhere. | string(osid‑id)[] |
resourceId | The resource to which this address belongs. References a resource.Resource object | string(osid‑id) |
AddressBooks
Addresses and Contacts can be organized into federateable AddressBooks.
Field | Description | Type |
---|---|---|
id(read‑only) | The unique id of this address book, provided by system. | string(osid‑id) |
uri(read‑only) | The uri of this address book, provided by system. | string(uri) |
displayName | The name of this address book for display. | string |
description | The description of this address book. | string |
genusTypeId (read‑only) | Id of the immutable type of this address book. Default type set by system unless specified in query parameter. | string(osid‑id) |
recordTypeIds (read‑only) | Type Ids of record types available on this address book. 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 address book. References a resource.Resource object. | string(osid‑id) |
brandingIds | The branding of this address book. References repository.Asset objects. | string(osid‑id)[] |
license | The licensing that applies to this address book. | string |
License
CampusAPI REST Documentation Copyright 2020 DXtera Institute. Based on the Open Service Interface Defitions: http://osid.org
/contacts
Collection of contacts in a system, federation of systems, or in a default addressBook.
Get all contacts in the system or default addressBook.
Create a new contact in the default addressBook.
get /contacts
Get all contacts in the system or default addressBook.
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
- genusTypeId: (string)
The id string to match a genusType
Example:
type.Type%3AexampleContactType%40dxtera.org
- parentGenusTypeId: (string)
The id string to match a parent genusType
Example:
type.Type%3AparentTypeExampleContactType%40dxtera.org
- recordTypeId: (string)
The id string to match a recordType
Example:
type.Type%3AexampleContactType%40campusapi.org
- fromDate: (string)
Get all contacts from this date inclusive. Use with toDate to define date range query.
Example:
2020-10-03
- toDate: (string)
Get all contacts up to this date inclusive. Use with fromDate to define date range query.
Example:
2020-12-18
- addressId: (string)
the id string to match a address.
Example:
contact.Address%3A343%40base.url
- referenceId: (string)
the id string to match a reference.
Example:
resource.Resource%3A504%40base.url
- addressBookId: (string)
The id string to match a addressBook
Example:
contact.AddressBook%3A8374%40base.url
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "contact.Contact:3184@base.url",
"uri": "http://base.url/open/campusapi/contact/contact/contact.Contact%3A3184%40base.url",
"displayName": "Display Name of this Contact",
"description": "The description of this Contact",
"genusTypeId": "type.Type:defaultContactType@base.url",
"recordTypeIds": [ "type.Type:exampleContactRecordType@campusapi.org", "..."],
"startDate": "2020-10-03T06:30:00.000Z",
"endDate": "2020-12-18T19:30:00.000Z",
"endReasonId": "process.State:3184@base.url",
"addressId": "contact.Address:4487@base.url",
"referenceId": "id.Id:5016@base.url",
"addresseeId": "resource.Resource:5347@base.url"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
post /contacts
Create a new contact in the default addressBook.
Query Parameters
- addressId: required(string)
the address of this contact.
Example:
contact.Address%3A343%40base.url
- referenceId: required(string)
the reference of this contact.
Example:
resource.Resource%3A504%40base.url
- genusType: (string)
specify a particular contact type to create
Example:
type.Type%3AexampleContactType%40dxtera.org
- recordType: (array of )
specify support for one or more contact record types
Example:
[ "type.Type%3AexampleContactRecordType%40campusapi.org", "..." ]
- addressBookId: (string)
specify in which address-book to create this contact
Example:
contact.AddressBook%3A8374%40base.url
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Contact",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this contact, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this contact, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this contact for display.",
"type": "string"
},
"description": {
"description": "The description of this contact.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this contact. 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 contact. 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 contact.",
"type": "string",
"format": "date-time"
},
"endDate": {
"description": "The ending date of this contact.",
"type": "string",
"format": "date-time"
},
"endReasonId": {
"description": "The reason this contact ended.",
"type": "string",
"format": "osid-id"
},
"addressId": {
"description": "The address associated with this contact.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"referenceId": {
"description": "The reference associated with this contact.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"addresseeId": {
"description": "The addressee.",
"type": "string",
"format": "osid-id"
}
}
}
Example:
{
"displayName": "Display Name of this Contact",
"description": "The description of this Contact",
"startDate": "2020-10-03T06:30:00.000Z",
"endDate": "2020-12-18T19:30:00.000Z",
"endReasonId": "process.State:2008@base.url",
"addresseeId": "resource.Resource:8170@base.url"
}
Entity representing a contact form metadata.
Get form metadata for creating a new contact.
get /contacts/metadata
Get form metadata for creating a new contact.
Query Parameters
- addressId: required(string)
the address of this metadatum.
Example:
contact.Address%3A343%40base.url
- referenceId: required(string)
the reference of this metadatum.
Example:
resource.Resource%3A504%40base.url
- genusType: (string)
specify a particular contact type to create
Example:
type.Type%3AexampleContactType%40dxtera.org
- recordType: (array of )
specify support for one or more contact record types
Example:
[ "type.Type%3AexampleContactRecordType%40campusapi.org", "..." ]
- addressBookId: (string)
specify in which address-book to create this contact
Example:
contact.AddressBook%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": "Contact",
"type": "object",
"required": ["displayName"],
"properties": {
"id": {
"description": "The unique id of this contact, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this contact, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this contact for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Contact.Contact:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this contact",
"linked": false
},
"description": {
"description": "The description of this contact.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Contact.Contact:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this contact",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this contact. 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 contact. 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 contact.",
"type": "string",
"format": "date-time",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Contact.Contact:startDate@base.url",
"existingValue": "2020-10-03T08:00:00.000Z",
"elementLabel": "Start Date",
"instructions": "Enter a starting date for this contact",
"linked": false
},
"endDate": {
"description": "The ending date of this contact.",
"type": "string",
"format": "date-time",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Contact.Contact:endDate@base.url",
"existingValue": "2020-12-18T17:00:00.000Z",
"elementLabel": "End Date",
"instructions": "Enter an ending date for this contact",
"linked": false
},
"endReasonId": {
"description": "The reason this contact ended. A process/State object.",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Contact.Contact:endReason@base.url",
"existingValue": "process.State:1860@base.url",
"elementLabel": "End Reason",
"instructions": "Select the reason this contact ended",
"linked": false
},
"addresseeId": {
"description": "The addressee.",
"type": "string",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "contact.Contact:addressee@dxtera.org",
"existingValue": null,
"elementLabel": "Addressee",
"instructions": "Enter the Id of the addressee for this contact.",
"linked": false
}
}
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Entity representing a contact
Get a contact given its id.
Update a given contact.
Delete a given contact.
get /contacts/{contactId}
Get a contact given its id.
URI Parameters
- contactId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"id": "contact.Contact:3184@base.url",
"uri": "http://base.url/open/campusapi/contact/contact/contact.Contact%3A3184%40base.url",
"displayName": "Display Name of this Contact",
"description": "The description of this Contact",
"genusTypeId": "type.Type:defaultContactType@base.url",
"recordTypeIds": [ "type.Type:exampleContactRecordType@campusapi.org", "..."],
"startDate": "2020-10-03T06:30:00.000Z",
"endDate": "2020-12-18T19:30:00.000Z",
"endReasonId": "process.State:3184@base.url",
"addressId": "contact.Address:4487@base.url",
"referenceId": "id.Id:5016@base.url",
"addresseeId": "resource.Resource:5347@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": "contact not found" }
put /contacts/{contactId}
Update a given contact.
URI Parameters
- contactId: required(string)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Contact",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this contact, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this contact, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this contact for display.",
"type": "string"
},
"description": {
"description": "The description of this contact.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this contact. 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 contact. 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 contact.",
"type": "string",
"format": "date-time"
},
"endDate": {
"description": "The ending date of this contact.",
"type": "string",
"format": "date-time"
},
"endReasonId": {
"description": "The reason this contact ended.",
"type": "string",
"format": "osid-id"
},
"addressId": {
"description": "The address associated with this contact.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"referenceId": {
"description": "The reference associated with this contact.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"addresseeId": {
"description": "The addressee.",
"type": "string",
"format": "osid-id"
}
}
}
Example:
{
"displayName": "Display Name of this Contact",
"description": "The description of this Contact",
"startDate": "2020-10-03T06:30:00.000Z",
"endDate": "2020-12-18T19:30:00.000Z",
"endReasonId": "process.State:2008@base.url",
"addresseeId": "resource.Resource:8170@base.url"
}
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The contact 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": "contact not found" }
delete /contacts/{contactId}
Delete a given contact.
URI Parameters
- contactId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The contact 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": "contact not found" }
Entity representing a contact form metadata for update
Get form metadata for updating an existing contact.
get /contacts/{contactId}/metadata
Get form metadata for updating an existing contact.
URI Parameters
- contactId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"$schema": "http://json-schema.org/draft/2019-9/schema#",
"title": "Contact",
"type": "object",
"required": ["displayName"],
"properties": {
"id": {
"description": "The unique id of this contact, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this contact, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this contact for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Contact.Contact:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this contact",
"linked": false
},
"description": {
"description": "The description of this contact.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Contact.Contact:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this contact",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this contact. 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 contact. 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 contact.",
"type": "string",
"format": "date-time",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Contact.Contact:startDate@base.url",
"existingValue": "2020-10-03T08:00:00.000Z",
"elementLabel": "Start Date",
"instructions": "Enter a starting date for this contact",
"linked": false
},
"endDate": {
"description": "The ending date of this contact.",
"type": "string",
"format": "date-time",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Contact.Contact:endDate@base.url",
"existingValue": "2020-12-18T17:00:00.000Z",
"elementLabel": "End Date",
"instructions": "Enter an ending date for this contact",
"linked": false
},
"endReasonId": {
"description": "The reason this contact ended. A process/State object.",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Contact.Contact:endReason@base.url",
"existingValue": "process.State:1860@base.url",
"elementLabel": "End Reason",
"instructions": "Select the reason this contact ended",
"linked": false
},
"addresseeId": {
"description": "The addressee.",
"type": "string",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "contact.Contact:addressee@dxtera.org",
"existingValue": null,
"elementLabel": "Addressee",
"instructions": "Enter the Id of the addressee for this contact.",
"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": "contact not found" }
/addresses
Collection of addresses in a system, federation of systems, or in a default addressBook.
Get all addresses in the system or default addressBook.
Create a new address in the default addressBook.
get /addresses
Get all addresses in the system or default addressBook.
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
- genusTypeId: (string)
The id string to match a genusType
Example:
type.Type%3AexampleAddressType%40dxtera.org
- parentGenusTypeId: (string)
The id string to match a parent genusType
Example:
type.Type%3AparentTypeExampleAddressType%40dxtera.org
- recordTypeId: (string)
The id string to match a recordType
Example:
type.Type%3AexampleAddressType%40campusapi.org
- resourceId: (string)
Id string to match resource.
Example:
resource.Resource%3A3690%40demo.dxtera.org
- addressBookId: (string)
The id string to match a addressBook
Example:
contact.AddressBook%3A8374%40base.url
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "contact.Address:7311@base.url",
"uri": "http://base.url/open/campusapi/contact/address/contact.Address%3A7311%40base.url",
"displayName": "Display Name of this Address",
"description": "The description of this Address",
"genusTypeId": "type.Type:defaultAddressType@base.url",
"recordTypeIds": [ "type.Type:exampleAddressRecordType@campusapi.org", "..."],
"resourceId": "resource.Resource:3362@base.url"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
post /addresses
Create a new address in the default addressBook.
Query Parameters
- genusType: (string)
specify a particular address type to create
Example:
type.Type%3AexampleAddressType%40dxtera.org
- recordType: (array of )
specify support for one or more address record types
Example:
[ "type.Type%3AexampleAddressRecordType%40campusapi.org", "..." ]
- addressBookId: (string)
specify in which address-book to create this address
Example:
contact.AddressBook%3A8374%40base.url
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Address",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this address, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this address, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this address for display.",
"type": "string"
},
"description": {
"description": "The description of this address.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this address. 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 address. 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
},
"resourceId": {
"description": "The resource to which this address belongs.",
"type": "string",
"format": "osid-id"
}
}
}
Example:
{
"displayName": "Display Name of this Address",
"description": "The description of this Address",
"resourceId": "resource.Resource:2792@base.url"
}
Entity representing a address form metadata.
Get form metadata for creating a new address.
get /addresses/metadata
Get form metadata for creating a new address.
Query Parameters
- genusType: (string)
specify a particular address type to create
Example:
type.Type%3AexampleAddressType%40dxtera.org
- recordType: (array of )
specify support for one or more address record types
Example:
[ "type.Type%3AexampleAddressRecordType%40campusapi.org", "..." ]
- addressBookId: (string)
specify in which address-book to create this address
Example:
contact.AddressBook%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": "Address",
"type": "object",
"required": ["displayName"],
"properties": {
"id": {
"description": "The unique id of this address, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this address, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this address for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Address.Address:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this address",
"linked": false
},
"description": {
"description": "The description of this address.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Address.Address:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this address",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this address. 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 address. 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
},
"resourceId": {
"description": "The resource to which this address belongs.",
"type": "string",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "contact.Address:resource@dxtera.org",
"existingValue": null,
"elementLabel": "Resource",
"instructions": "Enter the Id of the resource for this address.",
"linked": false
}
}
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Entity representing a address
Get a address given its id.
Update a given address.
Delete a given address.
get /addresses/{addressId}
Get a address given its id.
URI Parameters
- addressId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"id": "contact.Address:7311@base.url",
"uri": "http://base.url/open/campusapi/contact/address/contact.Address%3A7311%40base.url",
"displayName": "Display Name of this Address",
"description": "The description of this Address",
"genusTypeId": "type.Type:defaultAddressType@base.url",
"recordTypeIds": [ "type.Type:exampleAddressRecordType@campusapi.org", "..."],
"resourceId": "resource.Resource:3362@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": "address not found" }
put /addresses/{addressId}
Update a given address.
URI Parameters
- addressId: required(string)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Address",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this address, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this address, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this address for display.",
"type": "string"
},
"description": {
"description": "The description of this address.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this address. 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 address. 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
},
"resourceId": {
"description": "The resource to which this address belongs.",
"type": "string",
"format": "osid-id"
}
}
}
Example:
{
"displayName": "Display Name of this Address",
"description": "The description of this Address",
"resourceId": "resource.Resource:2792@base.url"
}
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The address 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": "address not found" }
delete /addresses/{addressId}
Delete a given address.
URI Parameters
- addressId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The address 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": "address not found" }
Entity representing a address form metadata for update
Get form metadata for updating an existing address.
get /addresses/{addressId}/metadata
Get form metadata for updating an existing address.
URI Parameters
- addressId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"$schema": "http://json-schema.org/draft/2019-9/schema#",
"title": "Address",
"type": "object",
"required": ["displayName"],
"properties": {
"id": {
"description": "The unique id of this address, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this address, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this address for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Address.Address:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this address",
"linked": false
},
"description": {
"description": "The description of this address.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "Address.Address:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this address",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this address. 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 address. 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
},
"resourceId": {
"description": "The resource to which this address belongs.",
"type": "string",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "contact.Address:resource@dxtera.org",
"existingValue": null,
"elementLabel": "Resource",
"instructions": "Enter the Id of the resource for this address.",
"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": "address not found" }
/address-books
Collection of address-books in a system or federation of systems.
Get all address-books.
Create a new address-book.
get /address-books
Get all address-books.
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
- genusTypeId: (string)
The id string to match a genusType
Example:
type.Type%3AexampleAddressBookType%40dxtera.org
- parentGenusTypeId: (string)
The id string to match a parent genusType
Example:
type.Type%3AparentTypeExampleAddressBookType%40dxtera.org
- recordTypeId: (string)
The id string to match a recordType
Example:
type.Type%3AexampleAddressBookType%40campusapi.org
- providerId: (string)
Id string to match provider.
Example:
resource.Resource%3A3007%40demo.dxtera.org
- contactId: (string)
Get address-books mapped to this contact.
Example:
contact.Contact%3A539%40demo.dxtera.org
- addressId: (string)
Get address-books mapped to this address.
Example:
contact.Address%3A539%40demo.dxtera.org
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "contact.AddressBook:1303@base.url",
"uri": "http://base.url/open/campusapi/contact/addressBook/contact.AddressBook%3A1303%40base.url",
"displayName": "Display Name of this AddressBook",
"description": "The description of this AddressBook",
"genusTypeId": "type.Type:defaultAddressBookType@base.url",
"recordTypeIds": [ "type.Type:exampleAddressBookRecordType@campusapi.org", "..."],
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:AddressBook@base.url",
"license": "The license that applies to this AddressBook"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
post /address-books
Create a new address-book.
Query Parameters
- genusType: (string)
specify a particular addressBook type to create
Example:
type.Type%3AexampleAddressBookType%40dxtera.org
- recordType: (array of )
specify support for one or more addressBook record types
Example:
[ "type.Type%3AexampleAddressBookRecordType%40campusapi.org", "..." ]
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "AddressBook",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this address book, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this address book, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this address book for display.",
"type": "string"
},
"description": {
"description": "The description of this address book.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this address book. 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 address book. 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 address book.",
"type": "string",
"format": "osid-id"
},
"brandingIds": {
"description": "The branding of this address book. A collection of Assets.",
"type": "array",
"items" : {
"type": "string",
"format": "osid-id"
}
},
"license": {
"description": "The licensing that applies to this address book.",
"type": "string"
}
}
}
Example:
{
"displayName": "Display Name of this AddressBook",
"description": "The description of this AddressBook",
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:AddressBook@base.url",
"license": "The license that applies to this AddressBook"
}
Entity representing a addressBook form metadata.
Get form metadata for creating a new addressBook.
get /address-books/metadata
Get form metadata for creating a new addressBook.
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"$schema": "http://json-schema.org/draft/2019-9/schema#",
"title": "AddressBook",
"type": "object",
"required": ["displayName"],
"properties": {
"id": {
"description": "The unique id of this address book, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this address book, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this address book for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "AddressBook.AddressBook:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this address book",
"linked": false
},
"description": {
"description": "The description of this address book.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "AddressBook.AddressBook:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this address book",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this address book. 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 address book. 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 address book.",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "AddressBook.AddressBook:provider@base.url",
"existingValue": "",
"elementLabel": "Provider",
"instructions": "Enter the provider of this address book",
"linked": false
},
"brandingIds": {
"description": "The branding of this address book. A list of Assets.",
"type": "array",
"items" : {
"type": "string",
"format": "osid-id",
"pattern": "",
"enum": []
},
"read-only": false,
"default": [],
"elementId": "AddressBook.AddressBook:branding@base.url",
"existingValue": "",
"elementLabel": "Branding",
"instructions": "Enter the branding images for this address book",
"linked": false
},
"license": {
"description": "The licensing that applies to this address book.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "AddressBook.AddressBook:license@base.url",
"existingValue": "The Existing License",
"elementLabel": "License",
"instructions": "Include a license for this address book",
"linked": false
}
}
}
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
The root addressBooks in the addressBook hierarchy. A node with no parents is an orphan. While all addressBook 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-address-book
get /address-books/root-address-book
Get all root root-address-book
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "contact.AddressBook:1303@base.url",
"uri": "http://base.url/open/campusapi/contact/addressBook/contact.AddressBook%3A1303%40base.url",
"displayName": "Display Name of this AddressBook",
"description": "The description of this AddressBook",
"genusTypeId": "type.Type:defaultAddressBookType@base.url",
"recordTypeIds": [ "type.Type:exampleAddressBookRecordType@campusapi.org", "..."],
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:AddressBook@base.url",
"license": "The license that applies to this AddressBook"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Entity representing a address-book
Get a address-book given its id.
Update a given address-book.
Delete a given address-book.
get /address-books/{addressBookId}
Get a address-book given its id.
URI Parameters
- addressBookId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"id": "contact.AddressBook:1303@base.url",
"uri": "http://base.url/open/campusapi/contact/addressBook/contact.AddressBook%3A1303%40base.url",
"displayName": "Display Name of this AddressBook",
"description": "The description of this AddressBook",
"genusTypeId": "type.Type:defaultAddressBookType@base.url",
"recordTypeIds": [ "type.Type:exampleAddressBookRecordType@campusapi.org", "..."],
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:AddressBook@base.url",
"license": "The license that applies to this AddressBook"
}
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": "address-book not found" }
put /address-books/{addressBookId}
Update a given address-book.
URI Parameters
- addressBookId: required(string)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "AddressBook",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this address book, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this address book, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this address book for display.",
"type": "string"
},
"description": {
"description": "The description of this address book.",
"type": "string"
},
"genusTypeId": {
"description": "Id of the immutable type of this address book. 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 address book. 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 address book.",
"type": "string",
"format": "osid-id"
},
"brandingIds": {
"description": "The branding of this address book. A collection of Assets.",
"type": "array",
"items" : {
"type": "string",
"format": "osid-id"
}
},
"license": {
"description": "The licensing that applies to this address book.",
"type": "string"
}
}
}
Example:
{
"displayName": "Display Name of this AddressBook",
"description": "The description of this AddressBook",
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:AddressBook@base.url",
"license": "The license that applies to this AddressBook"
}
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The address-book 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": "address-book not found" }
delete /address-books/{addressBookId}
Delete a given address-book.
URI Parameters
- addressBookId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The address-book 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": "address-book not found" }
Entity representing a addressBook form metadata for update
Get form metadata for updating an existing addressBook.
get /address-books/{addressBookId}/metadata
Get form metadata for updating an existing addressBook.
URI Parameters
- addressBookId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{
"$schema": "http://json-schema.org/draft/2019-9/schema#",
"title": "AddressBook",
"type": "object",
"required": ["displayName"],
"properties": {
"id": {
"description": "The unique id of this address book, provided by system.",
"type": "string",
"format": "osid-id",
"readOnly": true
},
"uri": {
"description": "The uri of this address book, provided by system.",
"type": "string",
"format": "uri",
"readOnly": true
},
"displayName": {
"description": "The name of this address book for display.",
"type": "string",
"read-only": false,
"minLength": 1,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "AddressBook.AddressBook:displayName@base.url",
"existingValue": "The Existing Name",
"elementLabel": "Name",
"instructions": "Enter a name for this address book",
"linked": false
},
"description": {
"description": "The description of this address book.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "AddressBook.AddressBook:displayName@demo.base.url",
"existingValue": "The Existing Description",
"elementLabel": "Description",
"instructions": "Enter a description for this address book",
"linked": false
},
"genusTypeId": {
"description": "Id of the immutable type of this address book. 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 address book. 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 address book.",
"type": "string",
"format": "osid-id",
"read-only": false,
"pattern": "",
"default": "",
"enum": [],
"elementId": "AddressBook.AddressBook:provider@base.url",
"existingValue": "",
"elementLabel": "Provider",
"instructions": "Enter the provider of this address book",
"linked": false
},
"brandingIds": {
"description": "The branding of this address book. A list of Assets.",
"type": "array",
"items" : {
"type": "string",
"format": "osid-id",
"pattern": "",
"enum": []
},
"read-only": false,
"default": [],
"elementId": "AddressBook.AddressBook:branding@base.url",
"existingValue": "",
"elementLabel": "Branding",
"instructions": "Enter the branding images for this address book",
"linked": false
},
"license": {
"description": "The licensing that applies to this address book.",
"type": "string",
"read-only": false,
"minLength": 0,
"maxLength": 128,
"pattern": "",
"default": "",
"enum": [],
"elementId": "AddressBook.AddressBook:license@base.url",
"existingValue": "The Existing License",
"elementLabel": "License",
"instructions": "Include a license for this address book",
"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": "addressBook not found" }
Get child addressBooks for the given addressBook in the hierarchy.
get /address-books/{addressBookId}/children
Get child addressBooks for the given addressBook in the hierarchy.
URI Parameters
- addressBookId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "contact.AddressBook:1303@base.url",
"uri": "http://base.url/open/campusapi/contact/addressBook/contact.AddressBook%3A1303%40base.url",
"displayName": "Display Name of this AddressBook",
"description": "The description of this AddressBook",
"genusTypeId": "type.Type:defaultAddressBookType@base.url",
"recordTypeIds": [ "type.Type:exampleAddressBookRecordType@campusapi.org", "..."],
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:AddressBook@base.url",
"license": "The license that applies to this AddressBook"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Add addressBook as child of the given addressBook in the hierarchy.
Remove the given addressBook as a child of the given addressBook in the hierarchy.
put /address-books/{addressBookId}/children/{childId}
Add addressBook as child of the given addressBook in the hierarchy.
URI Parameters
- addressBookId: required(string)
- childId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "The child addressBook 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": "addressBook not found" }
delete /address-books/{addressBookId}/children/{childId}
Remove the given addressBook as a child of the given addressBook in the hierarchy.
URI Parameters
- addressBookId: required(string)
- childId: required(string)
Get parent addressBooks for the given addressBook in the hierarchy.
get /address-books/{addressBookId}/parents
Get parent addressBooks for the given addressBook in the hierarchy.
URI Parameters
- addressBookId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "contact.AddressBook:1303@base.url",
"uri": "http://base.url/open/campusapi/contact/addressBook/contact.AddressBook%3A1303%40base.url",
"displayName": "Display Name of this AddressBook",
"description": "The description of this AddressBook",
"genusTypeId": "type.Type:defaultAddressBookType@base.url",
"recordTypeIds": [ "type.Type:exampleAddressBookRecordType@campusapi.org", "..."],
"providerId": "resource.Resource:123@base.url",
"brandingId": "asset.Asset:AddressBook@base.url",
"license": "The license that applies to this AddressBook"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Get all contacts in this addressBook
get /address-books/{addressBookId}/contacts
Get all contacts in this addressBook
URI Parameters
- addressBookId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "contact.Contact:3184@base.url",
"uri": "http://base.url/open/campusapi/contact/contact/contact.Contact%3A3184%40base.url",
"displayName": "Display Name of this Contact",
"description": "The description of this Contact",
"genusTypeId": "type.Type:defaultContactType@base.url",
"recordTypeIds": [ "type.Type:exampleContactRecordType@campusapi.org", "..."],
"startDate": "2020-10-03T06:30:00.000Z",
"endDate": "2020-12-18T19:30:00.000Z",
"endReasonId": "process.State:3184@base.url",
"addressId": "contact.Address:4487@base.url",
"referenceId": "id.Id:5016@base.url",
"addresseeId": "resource.Resource:5347@base.url"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Add the given contact to this addressBook
Remove the given contact from the addressBook.
put /address-books/{addressBookId}/contacts/{contactId}
Add the given contact to this addressBook
URI Parameters
- addressBookId: required(string)
- contactId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "contact has been added to addressBook" }
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": "contact not found" }
delete /address-books/{addressBookId}/contacts/{contactId}
Remove the given contact from the addressBook.
URI Parameters
- addressBookId: required(string)
- contactId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "contact 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": "contact not found" }
Get all addresses in this addressBook
get /address-books/{addressBookId}/addresses
Get all addresses in this addressBook
URI Parameters
- addressBookId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
[
{
"id": "contact.Address:7311@base.url",
"uri": "http://base.url/open/campusapi/contact/address/contact.Address%3A7311%40base.url",
"displayName": "Display Name of this Address",
"description": "The description of this Address",
"genusTypeId": "type.Type:defaultAddressType@base.url",
"recordTypeIds": [ "type.Type:exampleAddressRecordType@campusapi.org", "..."],
"resourceId": "resource.Resource:3362@base.url"
},
{
"...": "..."
}
]
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{"message": "Permission denied" }
Add the given address to this addressBook
Remove the given address from the addressBook.
put /address-books/{addressBookId}/addresses/{addressId}
Add the given address to this addressBook
URI Parameters
- addressBookId: required(string)
- addressId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "address has been added to addressBook" }
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": "address not found" }
delete /address-books/{addressBookId}/addresses/{addressId}
Remove the given address from the addressBook.
URI Parameters
- addressBookId: required(string)
- addressId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{ "message": "address 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": "address not found" }