{"swaggerDoc":{"swagger":"2.0","info":{"description":"This API enables the programmatic retrieval, addition, and editing of products, apis, and companies on the HTNG API Registry. To get started, create an account at htngapi.aliceapp.com, retrieve your API credential from the Profile tab of your Account Page, and authenticate to this API via Basic Auth. You may try out any endpoint by pressing the 'Authorize' button below, entering your API credentials, and pressing 'Try it out' on any endpoint in the documentation.","version":"0.8.0","title":"HTNG API Registry Open API"},"host":"apiregistry.htng.org","basePath":"/rest/api/v0.8/","schemes":["https","http"],"paths":{"/api":{"get":{"tags":["API"],"summary":"Retrieve APIs","description":"Returns all APIs in the HTNG API Registry. To filter APIs, include one of the parameters listed below. Multiple parameters are not supported.","operationId":"getAPIs","consumes":[],"produces":["application/json"],"parameters":[{"name":"product","in":"query","description":"UUID string of the product serviced by the APIs you'd like to retrieve. Example: '42d36ac4-baae-44ad-aaad-959c753919a7'. Cannot be combined with other parameters.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"category","in":"query","description":"String representing the product category the API serves. Example: 'PMS'. Categories can be retrieved from the category endpoint. Cannot be combined with other parameters","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"page","in":"query","description":"Integer representing the page, or group of elements, starting from 0","required":false,"type":"integer","minimum":0,"maximum":50},{"name":"results","in":"query","description":"Integer representing the number of elements to return in a given page. The default is 0 and the max is 50","required":false,"type":"integer","minimum":0,"maximum":50}],"responses":{"200":{"description":"successful operation","schema":{"$ref":"#/definitions/API"}},"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"}}},"post":{"tags":["API"],"summary":"Create an API","description":"Add an API to the HTNG Regsitry","operationId":"createAPI","consumes":[],"produces":["application/json"],"parameters":[{"in":"body","name":"body","description":"The API you'd like to add","required":true,"schema":{"$ref":"#/definitions/API"}}],"security":[{"basicAuth":[]}],"responses":{"200":{"description":"successful operation","schema":{"$ref":"#/definitions/API"}},"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"}}}},"/api/{apiId}":{"get":{"tags":["API"],"summary":"Retrieve a single API by its ID","description":"Retrieve a single API by its UUID. Example: '/api/42d36ac4-baae-44ad-aaad-959c753919a7'","operationId":"getSingleAPI","consumes":[],"produces":["application/json"],"parameters":[{"name":"apiId","in":"path","description":"the UUID of the API you'd like to retrieve","required":true,"schema":{"type":"array","items":{"type":"string"}}}],"responses":{"200":{"description":"successful operation","schema":{"$ref":"#/definitions/API"}},"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"}}},"put":{"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"},"tags":["API"],"summary":"Update an existing API","description":"Update an existing API by its ID","operationId":"updateAPI","consumes":["application/json"],"produces":["application/json"],"parameters":[{"name":"apiId","in":"path","description":"the UUID of the API you'd like to update","required":true,"schema":{"type":"array","items":{"type":"string"}}},{"in":"body","name":"body","description":"An API to replace the current one","required":true,"schema":{"$ref":"#/definitions/API"}}],"security":[{"basicAuth":[]}],"responses":{"200":{"description":"Successful update"}}}},"/product":{"get":{"tags":["Product"],"summary":"Retrieve products","description":"Returns all products in the HTNG API Registry. To filter the returned products, include one of the parameters listed below. Multiple parameters are not supported.","operationId":"getProducts","consumes":[],"produces":["application/json"],"parameters":[{"name":"company","in":"query","description":"UUID string of the parent company of the products you'd like to retrieve. Example: '42d36ac4-baae-44ad-aaad-959c753919a7'. Cannot be combined with other parameters.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"category","in":"query","description":"String representing the category of the product. Example: 'PMS'. Categories can be retrieved from the category endpoint. May be used independently or with integProdId","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"integProdId","in":"query","description":"UUID string of the product whose integration partners you'd like to retrieve. Example: '42d36ac4-baae-44ad-aaad-959c753919a7'. Must be used with Category, but cannot be combined with any other parameters","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"page","in":"query","description":"Integer representing the page, or group of elements, starting from 0","required":false,"type":"integer","minimum":0,"maximum":50},{"name":"results","in":"query","description":"Integer representing the number of elements to return in a given page. The default is 0 and the max is 50","required":false,"type":"integer","minimum":0,"maximum":50}],"responses":{"200":{"description":"successful operation","schema":{"$ref":"#/definitions/Product"}},"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"}}},"post":{"tags":["Product"],"summary":"Create a Product","description":"Add a Product to the HTNG Regsitry","operationId":"createProduct","consumes":[],"produces":["application/json"],"parameters":[{"in":"body","name":"body","description":"A Product to replace the current one","required":true,"schema":{"$ref":"#/definitions/Product"}}],"security":[{"basicAuth":[]}],"responses":{"200":{"description":"successful operation","schema":{"$ref":"#/definitions/Product"}},"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"}}}},"/product/{productId}":{"get":{"tags":["Product"],"summary":"Retrieve a single Product by its ID","description":"Retrieve a single Product by its UUID. Example: '/product/42d36ac4-baae-44ad-aaad-959c753919a7'","operationId":"getSingleProduct","consumes":[],"produces":["application/json"],"parameters":[{"name":"productId","in":"path","description":"the UUID of the product you'd like to retrieve","required":true,"schema":{"type":"array","items":{"type":"string"}}}],"responses":{"200":{"description":"successful operation","schema":{"$ref":"#/definitions/Product"}},"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"}}},"put":{"tags":["Product"],"summary":"Update an existing Product","description":"Update an existing Product by its ID","operationId":"updateProduct","consumes":["application/json"],"produces":["application/json"],"parameters":[{"name":"productId","in":"path","description":"the UUID of the product you'd like to update","required":true,"schema":{"type":"array","items":{"type":"string"}}},{"in":"body","name":"body","description":"A Product to replace the current one","required":true,"schema":{"$ref":"#/definitions/Product"}}],"security":[{"basicAuth":[]}],"responses":{"200":{"description":"Successful update"},"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"}}}},"/integration":{"post":{"tags":["Integrations"],"summary":"Claim an integration between two products","description":"Use this endpoint to claim an integration between two products that already exist on the HTNG API Registry","operationId":"integrateProducts","consumes":[],"produces":["application/json"],"parameters":[{"in":"body","name":"body","description":"An integration object","required":true,"schema":{"$ref":"#/definitions/Integration"}}],"security":[{"basicAuth":[]}],"responses":{"200":{"description":"successful operation","schema":{"$ref":"#/definitions/Integration"}},"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"}}}},"/company":{"get":{"tags":["Company"],"summary":"Retrieve companies","description":"Returns all companies in the HTNG API Registry. To filter the returned companies, include one of the parameters listed below. Multiple parameters are not supported.","operationId":"getCompanies","consumes":[],"produces":["application/json"],"parameters":[{"name":"category","in":"query","description":"String representing the category of the products produced by the company you're searching for. Example: 'PMS'. Categories can be retrieved from the category endpoint. Cannot be combined with other parameters","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"page","in":"query","description":"Integer representing the page, or group of elements, starting from 0","required":false,"type":"integer","minimum":0,"maximum":50},{"name":"results","in":"query","description":"Integer representing the number of elements to return in a given page. The default is 0 and the max is 50","required":false,"type":"integer","minimum":0,"maximum":50}],"responses":{"200":{"description":"successful operation","schema":{"$ref":"#/definitions/Company"}},"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"}}},"post":{"tags":["Company"],"summary":"Create a Company","description":"Add a Company to the HTNG Regsitry","operationId":"createCompany","consumes":[],"produces":["application/json"],"parameters":[{"name":"body","in":"body","description":"A Company to replace the current one","required":true,"schema":{"$ref":"#/definitions/Company"}}],"security":[{"basicAuth":[]}],"responses":{"200":{"description":"successful operation","schema":{"$ref":"#/definitions/Company"}},"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"}}}},"/company/{companyId}":{"get":{"tags":["Company"],"summary":"Retrieve a single Company by its ID","description":"Retrieve a single Company by its UUID. Example: '/company/42d36ac4-baae-44ad-aaad-959c753919a7'","operationId":"getSingleCompany","consumes":[],"produces":["application/json"],"parameters":[{"name":"companyId","in":"path","description":"the UUID of the company you'd like to retrieve","required":true,"schema":{"type":"array","items":{"type":"string"}}}],"responses":{"200":{"description":"successful operation","schema":{"$ref":"#/definitions/Company"}},"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"}}},"put":{"tags":["Company"],"summary":"Update an existing Company","description":"Update an existing Company by its ID","operationId":"updateCompany","consumes":["application/json"],"produces":["application/json"],"parameters":[{"name":"companyId","in":"path","description":"the UUID of the company you'd like to update","required":true,"schema":{"type":"array","items":{"type":"string"}}},{"name":"body","in":"body","description":"A Company to replace the current one","required":true,"schema":{"$ref":"#/definitions/Company"}}],"security":[{"basicAuth":[]}],"responses":{"200":{"description":"Successful update"},"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"}}}},"/category":{"get":{"tags":["Category"],"summary":"Retrieve the list of categories used in the HTNG API Registry","description":"Retrieve the list of categories used in the HTNG API Registry","operationId":"getAllCategories","consumes":[],"produces":["application/json"],"responses":{"200":{"description":"successful operation","schema":{"$ref":"#/definitions/Category"}},"401":{"description":"Authentication failed. Please ensure you are including your user ID and password, obtained from the profile tab on your account page, in Basic Auth headers with your request"},"500":{"description":"Internal error"}}}}},"securityDefinitions":{"basicAuth":{"type":"basic","scheme":"basic"}},"definitions":{"API":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"description":{"type":"string"},"data_provided":{"type":"string"},"homepage_url":{"type":"string","format":"url"},"support_email":{"type":"boolean","format":"email"},"endpoint":{"type":"string","format":"url"},"architecture":{"type":"string"},"documentation_url":{"type":"string","format":"url"}}},"Product":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"description":{"type":"string"},"specs":{"type":"string"},"homepage_url":{"type":"string","format":"url"},"company_id":{"type":"string","format":"uuid"}}},"Company":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"short_description":{"type":"string"},"long_description":{"type":"string"},"homepage_url":{"type":"string","format":"url"},"support_email":{"type":"boolean","format":"email"},"logo_path":{"type":"string","format":"path"},"htng_member":{"type":"boolean"}}},"Integration":{"type":"object","properties":{"ownerProduct":{"type":"string"},"providerProduct":{"type":"string"},"read":{"type":"boolean"},"write":{"type":"boolean"},"confirmedByProvider":{"type":"boolean"},"certifiedByProvider":{"type":"boolean"}}},"Category":{"type":"array"}}},"customOptions":{}}