Human Services Data Specification (HSDS) OpenAPI Spec v1.1 DRAFT

This is the OpenAPI definiton for the Human Services Data Specification (v1.1 DRAFT). It is available as an HTML list or YAML OpenAPI Specifications, as well as a screen for the schema, conversation around it's evolution, and a diff screen between v1.0 and v1.1. If you are looking for the schema for HSDS, there is it is maintained by separate group in a Github repository, with the documentation published here..

Contacts
Get Contacts /contacts/ GET
Request Parameters:
page: The particular page of results.
per_page: Amount of locations to return per page, up to 100.
Reponse Body: ()
Create Contact /contacts/ POST
Request Body: (contact)
id Each contact must have a unique identifier.
organization_id The identifier of the organization for which this is a contact.
service_id The identifier of the service for which this is a contact.
name The name of the person.
title The job title of the person.
department The department that the person is part of.
email The email address of the person.
Reponse Body: (contact)
id Each contact must have a unique identifier.
organization_id The identifier of the organization for which this is a contact.
service_id The identifier of the service for which this is a contact.
name The name of the person.
title The job title of the person.
department The department that the person is part of.
email The email address of the person.
Get Contact /contacts/{contact_id}/ GET
Path Parameters:
contact_id: The contact id.
Reponse Body: (contact)
id Each contact must have a unique identifier.
organization_id The identifier of the organization for which this is a contact.
service_id The identifier of the service for which this is a contact.
name The name of the person.
title The job title of the person.
department The department that the person is part of.
email The email address of the person.
Update Contact /contacts/{contact_id}/ PUT
Request Body: (contact)
id Each contact must have a unique identifier.
organization_id The identifier of the organization for which this is a contact.
service_id The identifier of the service for which this is a contact.
name The name of the person.
title The job title of the person.
department The department that the person is part of.
email The email address of the person.
Reponse Body: (contact)
id Each contact must have a unique identifier.
organization_id The identifier of the organization for which this is a contact.
service_id The identifier of the service for which this is a contact.
name The name of the person.
title The job title of the person.
department The department that the person is part of.
email The email address of the person.
Delete Contact /contacts/{contact_id}/ DELETE
Path Parameters:
contact_id: The contact id.
Reponse Body: (contact)
id Each contact must have a unique identifier.
organization_id The identifier of the organization for which this is a contact.
service_id The identifier of the service for which this is a contact.
name The name of the person.
title The job title of the person.
department The department that the person is part of.
email The email address of the person.
Contact - Phones
Get Phones /contacts/{contact_id}/phones/ GET
Path Parameters:
contact_id: The unique contact id.
Reponse Body: (contact)
id Each contact must have a unique identifier.
organization_id The identifier of the organization for which this is a contact.
service_id The identifier of the service for which this is a contact.
name The name of the person.
title The job title of the person.
department The department that the person is part of.
email The email address of the person.
Add Phone /contacts/{contact_id}/phones/ POST
Path Parameters:
contact_id: The unique contact id.
Request Body: (phone)
id Each entry must have a unique identifier.
location_id The identifier of the location where this phone number is located.
service_id The identifier of the service for which this is the phone number.
organization_id The identifier of the organisation for which this is the phone number.
contact_id The identifier of the contact for which this is the phone number.
number The phone number.
extension The extension of the phone number.
type Whether the phone number relates to a fixed or cellular phone.
department The department for which this is the phone number.
Reponse Body: (phone)
id Each entry must have a unique identifier.
location_id The identifier of the location where this phone number is located.
service_id The identifier of the service for which this is the phone number.
organization_id The identifier of the organisation for which this is the phone number.
contact_id The identifier of the contact for which this is the phone number.
number The phone number.
extension The extension of the phone number.
type Whether the phone number relates to a fixed or cellular phone.
department The department for which this is the phone number.
Get Phone /contacts/{contact_id}/phones/{phone_id}/ GET
Path Parameters:
contact_id: The unique contact id.
phone_id: The unique phone id.
Reponse Body: (phone)
id Each entry must have a unique identifier.
location_id The identifier of the location where this phone number is located.
service_id The identifier of the service for which this is the phone number.
organization_id The identifier of the organisation for which this is the phone number.
contact_id The identifier of the contact for which this is the phone number.
number The phone number.
extension The extension of the phone number.
type Whether the phone number relates to a fixed or cellular phone.
department The department for which this is the phone number.
Update Phone /contacts/{contact_id}/phones/{phone_id}/ PUT
Path Parameters:
contact_id: The unique contact id.
phone_id: The unique phone id.
Request Body: (phone)
id Each entry must have a unique identifier.
location_id The identifier of the location where this phone number is located.
service_id The identifier of the service for which this is the phone number.
organization_id The identifier of the organisation for which this is the phone number.
contact_id The identifier of the contact for which this is the phone number.
number The phone number.
extension The extension of the phone number.
type Whether the phone number relates to a fixed or cellular phone.
department The department for which this is the phone number.
Reponse Body: (phone)
id Each entry must have a unique identifier.
location_id The identifier of the location where this phone number is located.
service_id The identifier of the service for which this is the phone number.
organization_id The identifier of the organisation for which this is the phone number.
contact_id The identifier of the contact for which this is the phone number.
number The phone number.
extension The extension of the phone number.
type Whether the phone number relates to a fixed or cellular phone.
department The department for which this is the phone number.
Delete Phone /contacts/{contact_id}/phones/{phone_id}/ DELETE
Path Parameters:
contact_id: The unique contact id.
phone_id: The unique phone id.
Reponse Body: (phone)
id Each entry must have a unique identifier.
location_id The identifier of the location where this phone number is located.
service_id The identifier of the service for which this is the phone number.
organization_id The identifier of the organisation for which this is the phone number.
contact_id The identifier of the contact for which this is the phone number.
number The phone number.
extension The extension of the phone number.
type Whether the phone number relates to a fixed or cellular phone.
department The department for which this is the phone number.
Locations
Get Locations /locations/ GET
Request Parameters:
page: The particular page of results.
per_page: Amount of locations to return per page, up to 100.
Reponse Body: (phone)
id Each entry must have a unique identifier.
location_id The identifier of the location where this phone number is located.
service_id The identifier of the service for which this is the phone number.
organization_id The identifier of the organisation for which this is the phone number.
contact_id The identifier of the contact for which this is the phone number.
number The phone number.
extension The extension of the phone number.
type Whether the phone number relates to a fixed or cellular phone.
department The department for which this is the phone number.
Add Location /locations/ POST
Request Body: (location)
id Each location must have a unique identifier.
organization_id Each location must belong to a single organization. The identifier of the organization should be given here.
name The name of the location.
alternate_name An alternative name for the location.
description A description of this location.
transportation A description of the access to public or private transportation to and from the location.
latitude Y coordinate of location expressed in decimal degrees in WGS84 datum.
longitude X coordinate of location expressed in decimal degrees in WGS84 datum.
Reponse Body: (location)
id Each location must have a unique identifier.
organization_id Each location must belong to a single organization. The identifier of the organization should be given here.
name The name of the location.
alternate_name An alternative name for the location.
description A description of this location.
transportation A description of the access to public or private transportation to and from the location.
latitude Y coordinate of location expressed in decimal degrees in WGS84 datum.
longitude X coordinate of location expressed in decimal degrees in WGS84 datum.
Get Location /locations/{location_id}/ GET
Path Parameters:
location_id: The location id.
Reponse Body: (location)
id Each location must have a unique identifier.
organization_id Each location must belong to a single organization. The identifier of the organization should be given here.
name The name of the location.
alternate_name An alternative name for the location.
description A description of this location.
transportation A description of the access to public or private transportation to and from the location.
latitude Y coordinate of location expressed in decimal degrees in WGS84 datum.
longitude X coordinate of location expressed in decimal degrees in WGS84 datum.
Update Location /locations/{location_id}/ UPDATE
Path Parameters:
location_id: The unique location id.
Request Body: (location)
id Each location must have a unique identifier.
organization_id Each location must belong to a single organization. The identifier of the organization should be given here.
name The name of the location.
alternate_name An alternative name for the location.
description A description of this location.
transportation A description of the access to public or private transportation to and from the location.
latitude Y coordinate of location expressed in decimal degrees in WGS84 datum.
longitude X coordinate of location expressed in decimal degrees in WGS84 datum.
Reponse Body: (location)
id Each location must have a unique identifier.
organization_id Each location must belong to a single organization. The identifier of the organization should be given here.
name The name of the location.
alternate_name An alternative name for the location.
description A description of this location.
transportation A description of the access to public or private transportation to and from the location.
latitude Y coordinate of location expressed in decimal degrees in WGS84 datum.
longitude X coordinate of location expressed in decimal degrees in WGS84 datum.
Delete Location /locations/{location_id}/ DELETE
Path Parameters:
location_id: The location id.
Reponse Body: (location)
id Each location must have a unique identifier.
organization_id Each location must belong to a single organization. The identifier of the organization should be given here.
name The name of the location.
alternate_name An alternative name for the location.
description A description of this location.
transportation A description of the access to public or private transportation to and from the location.
latitude Y coordinate of location expressed in decimal degrees in WGS84 datum.
longitude X coordinate of location expressed in decimal degrees in WGS84 datum.
Location - Holiday Schedule
Get Holiday Schedule /locations/{location_id}/holiday_schedule/ GET
Path Parameters:
location_id: The unique location id.
Reponse Body: (location)
id Each location must have a unique identifier.
organization_id Each location must belong to a single organization. The identifier of the organization should be given here.
name The name of the location.
alternate_name An alternative name for the location.
description A description of this location.
transportation A description of the access to public or private transportation to and from the location.
latitude Y coordinate of location expressed in decimal degrees in WGS84 datum.
longitude X coordinate of location expressed in decimal degrees in WGS84 datum.
Add Holiday Schedule /locations/{location_id}/holiday_schedule/ POST
Path Parameters:
location_id: The unique location id.
Request Body: (holiday_schedule)
id Each entry must have a unique identifier.
service_id The identifier of the service for which this is the holiday schedule.
location_id The identifier of the location for which this is the holiday schedule.
closed Indicates if a service or location is closed during a public holiday.
opens_at The time when a service or location opens. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
closes_at The time when a service or location closes. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
start_date The first day that a service or location is closed during a public or private holiday.
end_date The last day that a service or location is closed during a public or private holiday.
Reponse Body: (holiday_schedule)
id Each entry must have a unique identifier.
service_id The identifier of the service for which this is the holiday schedule.
location_id The identifier of the location for which this is the holiday schedule.
closed Indicates if a service or location is closed during a public holiday.
opens_at The time when a service or location opens. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
closes_at The time when a service or location closes. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
start_date The first day that a service or location is closed during a public or private holiday.
end_date The last day that a service or location is closed during a public or private holiday.
Get Holiday Schedule /locations/{location_id}/holiday_schedule/{holiday_schedule_id}/ GET
Path Parameters:
location_id: The unique location id.
holiday_schedule_id: The unique holiday schedule id.
Reponse Body: (holiday_schedule)
id Each entry must have a unique identifier.
service_id The identifier of the service for which this is the holiday schedule.
location_id The identifier of the location for which this is the holiday schedule.
closed Indicates if a service or location is closed during a public holiday.
opens_at The time when a service or location opens. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
closes_at The time when a service or location closes. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
start_date The first day that a service or location is closed during a public or private holiday.
end_date The last day that a service or location is closed during a public or private holiday.
Update Holiday Schedule /locations/{location_id}/holiday_schedule/{holiday_schedule_id}/ PUT
Path Parameters:
location_id: The unique location id.
holiday_schedule_id: The unique holiday schedule id.
Request Body: (holiday_schedule)
id Each entry must have a unique identifier.
service_id The identifier of the service for which this is the holiday schedule.
location_id The identifier of the location for which this is the holiday schedule.
closed Indicates if a service or location is closed during a public holiday.
opens_at The time when a service or location opens. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
closes_at The time when a service or location closes. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
start_date The first day that a service or location is closed during a public or private holiday.
end_date The last day that a service or location is closed during a public or private holiday.
Reponse Body: (holiday_schedule)
id Each entry must have a unique identifier.
service_id The identifier of the service for which this is the holiday schedule.
location_id The identifier of the location for which this is the holiday schedule.
closed Indicates if a service or location is closed during a public holiday.
opens_at The time when a service or location opens. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
closes_at The time when a service or location closes. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
start_date The first day that a service or location is closed during a public or private holiday.
end_date The last day that a service or location is closed during a public or private holiday.
Delete Holiday Schedule /locations/{location_id}/holiday_schedule/{holiday_schedule_id}/ DELETE
Path Parameters:
location_id: The unique location id.
holiday_schedule_id: The unique holiday schdule id.
Reponse Body: (holiday_schedule)
id Each entry must have a unique identifier.
service_id The identifier of the service for which this is the holiday schedule.
location_id The identifier of the location for which this is the holiday schedule.
closed Indicates if a service or location is closed during a public holiday.
opens_at The time when a service or location opens. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
closes_at The time when a service or location closes. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
start_date The first day that a service or location is closed during a public or private holiday.
end_date The last day that a service or location is closed during a public or private holiday.
Location - Language
Get Languages /locations/{location_id}/languages/ GET
Path Parameters:
location_id: The unique location id.
Reponse Body: (holiday_schedule)
id Each entry must have a unique identifier.
service_id The identifier of the service for which this is the holiday schedule.
location_id The identifier of the location for which this is the holiday schedule.
closed Indicates if a service or location is closed during a public holiday.
opens_at The time when a service or location opens. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
closes_at The time when a service or location closes. This should use HH:MM format and should include timezone information, either adding the suffix ‘Z’ when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.
start_date The first day that a service or location is closed during a public or private holiday.
end_date The last day that a service or location is closed during a public or private holiday.
Add Languages /locations/{location_id}/languages/ POST
Path Parameters:
location_id: The unique location id.
Request Body: (language)
id Each language must have a unique identifier.
service_id The identifier of the service for which the entry describes the languages in which services are delivered.
location_id The identifier of the location for which the entry describes the languages in which services are delivered.
language Languages, other than English, in which the service is delivered. Languages are listed as ISO639-1 codes..
Reponse Body: (language)
id Each language must have a unique identifier.
service_id The identifier of the service for which the entry describes the languages in which services are delivered.
location_id The identifier of the location for which the entry describes the languages in which services are delivered.
language Languages, other than English, in which the service is delivered. Languages are listed as ISO639-1 codes..
Get Languages /locations/{location_id}/languages/{language_id}/ GET
Path Parameters:
location_id: The unique location id.
language_id: The unique language id.
Reponse Body: (language)
id Each language must have a unique identifier.
service_id The identifier of the service for which the entry describes the languages in which services are delivered.
location_id The identifier of the location for which the entry describes the languages in which services are delivered.
language Languages, other than English, in which the service is delivered. Languages are listed as ISO639-1 codes..
Update Languages /locations/{location_id}/languages/{language_id}/ PUT
Path Parameters:
location_id: The unique location id.
language_id: The unique language id.
Request Body: (language)
id Each language must have a unique identifier.
service_id The identifier of the service for which the entry describes the languages in which services are delivered.
location_id The identifier of the location for which the entry describes the languages in which services are delivered.
language Languages, other than English, in which the service is delivered. Languages are listed as ISO639-1 codes..
Reponse Body: (language)
id Each language must have a unique identifier.
service_id The identifier of the service for which the entry describes the languages in which services are delivered.
location_id The identifier of the location for which the entry describes the languages in which services are delivered.
language Languages, other than English, in which the service is delivered. Languages are listed as ISO639-1 codes..
Delete Languages /locations/{location_id}/languages/{language_id}/ DELETE
Path Parameters:
location_id: The unique location id.
language_id: The unique language id.
Reponse Body: (language)
id Each language must have a unique identifier.
service_id The identifier of the service for which the entry describes the languages in which services are delivered.
location_id The identifier of the location for which the entry describes the languages in which services are delivered.
language Languages, other than English, in which the service is delivered. Languages are listed as ISO639-1 codes..
Location - Postal Address
Get Postal Address /locations/{location_id}/postal_address/ GET
Path Parameters:
location_id: The unique location id.
Reponse Body: (language)
id Each language must have a unique identifier.
service_id The identifier of the service for which the entry describes the languages in which services are delivered.
location_id The identifier of the location for which the entry describes the languages in which services are delivered.
language Languages, other than English, in which the service is delivered. Languages are listed as ISO639-1 codes..
Add New Postal Adress /locations/{location_id}/postal_address/ POST
Path Parameters:
location_id: The unique location id.
Request Body: (postal_address)
id Each postal address must have a unique identifier.
location_id The identifier of the location for which this is the postal address.
attention The person or entity for whose attention mail should be marked.
address_1 The first line of the address.
address_2 The second line of the address.
address_3 The third line of the address.
address_4 The fourth line of the address.
city The city in which the address is located.
state_province The state or province in which the address is located.
postal_code The postal code for the address.
country The country in which the address is located.
Reponse Body: (postal_address)
id Each postal address must have a unique identifier.
location_id The identifier of the location for which this is the postal address.
attention The person or entity for whose attention mail should be marked.
address_1 The first line of the address.
address_2 The second line of the address.
address_3 The third line of the address.
address_4 The fourth line of the address.
city The city in which the address is located.
state_province The state or province in which the address is located.
postal_code The postal code for the address.
country The country in which the address is located.
Get Postal Address /locations/{location_id}/postal_address/{postal_address_id}/ GET
Path Parameters:
location_id: The unique location id.
postal_address_id: The unique postal address id.
Reponse Body: (postal_address)
id Each postal address must have a unique identifier.
location_id The identifier of the location for which this is the postal address.
attention The person or entity for whose attention mail should be marked.
address_1 The first line of the address.
address_2 The second line of the address.
address_3 The third line of the address.
address_4 The fourth line of the address.
city The city in which the address is located.
state_province The state or province in which the address is located.
postal_code The postal code for the address.
country The country in which the address is located.
Update Postal Address /locations/{location_id}/postal_address/{postal_address_id}/ PUT
Path Parameters:
location_id: The unique location id.
postal_address_id: The unique postal address id.
Request Body: (postal_address)
id Each postal address must have a unique identifier.
location_id The identifier of the location for which this is the postal address.
attention The person or entity for whose attention mail should be marked.
address_1 The first line of the address.
address_2 The second line of the address.
address_3 The third line of the address.
address_4 The fourth line of the address.
city The city in which the address is located.
state_province The state or province in which the address is located.
postal_code The postal code for the address.
country The country in which the address is located.
Reponse Body: (postal_address)
id Each postal address must have a unique identifier.
location_id The identifier of the location for which this is the postal address.
attention The person or entity for whose attention mail should be marked.
address_1 The first line of the address.
address_2 The second line of the address.
address_3 The third line of the address.
address_4 The fourth line of the address.
city The city in which the address is located.
state_province The state or province in which the address is located.
postal_code The postal code for the address.
country The country in which the address is located.
Delete Postal Address /locations/{location_id}/postal_address/{postal_address_id}/ DELETE
Path Parameters:
location_id: The unique location id.
postal_address_id: The unique postal address id.
Reponse Body: (postal_address)
id Each postal address must have a unique identifier.
location_id The identifier of the location for which this is the postal address.
attention The person or entity for whose attention mail should be marked.
address_1 The first line of the address.
address_2 The second line of the address.
address_3 The third line of the address.
address_4 The fourth line of the address.
city The city in which the address is located.
state_province The state or province in which the address is located.
postal_code The postal code for the address.
country The country in which the address is located.
Location - Physical Address
Get Physical Address /locations/{location_id}/physical_address/ GET
Path Parameters:
location_id: The unique location id.
Reponse Body: (postal_address)
id Each postal address must have a unique identifier.
location_id The identifier of the location for which this is the postal address.
attention The person or entity for whose attention mail should be marked.
address_1 The first line of the address.
address_2 The second line of the address.
address_3 The third line of the address.
address_4 The fourth line of the address.
city The city in which the address is located.
state_province The state or province in which the address is located.
postal_code The postal code for the address.
country The country in which the address is located.
Add New Physical Adress /locations/{location_id}/physical_address/ POST
Path Parameters:
location_id: The unique location id.
Request Body: (postal_address)
id Each postal address must have a unique identifier.
location_id The identifier of the location for which this is the postal address.
attention The person or entity for whose attention mail should be marked.
address_1 The first line of the address.
address_2 The second line of the address.
address_3 The third line of the address.
address_4 The fourth line of the address.
city The city in which the address is located.
state_province The state or province in which the address is located.
postal_code The postal code for the address.
country The country in which the address is located.
Reponse Body: (postal_address)
id Each postal address must have a unique identifier.