Open api |
---|
{
"swagger": "2.0",
"info": {
"version": "2020-05-01T11:26:57Z",
"title": "Public Arken API"
},
"host": "api.sandbox.arken.legal",
"schemes": [
"https"
],
"paths": {
"/account": {
"get": {
"tags": [
"Account"
],
"summary": "Get account data by account hash identifier",
"produces": [
"application/json"
],
"parameters": [{
"name": "hashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/Account"
}
},
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"404": {
"description": "404 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
}
},
"/client": {
"get": {
"tags": [
"Client"
],
"summary": "Get client based on its hash identifier",
"produces": [
"application/json"
],
"parameters": [{
"name": "hashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/Client"
}
},
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"404": {
"description": "404 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
},
"post": {
"tags": [
"Client"
],
"summary": "Create a new client",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [{
"name": "Content-Type",
"in": "header",
"required": true,
"type": "string"
},
{
"name": "accountHashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "Client",
"required": true,
"schema": {
"$ref": "#/definitions/Client"
}
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/Client"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
},
"put": {
"tags": [
"Client"
],
"summary": "Update an existing client",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [{
"name": "Content-Type",
"in": "header",
"required": true,
"type": "string"
},
{
"name": "hashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "Client",
"required": true,
"schema": {
"$ref": "#/definitions/Client"
}
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/Client"
}
},
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
},
"delete": {
"tags": [
"Client"
],
"summary": "Delete client based on its hash identifier",
"produces": [
"application/json"
],
"parameters": [{
"name": "hashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": true,
"type": "string"
}
],
"responses": {
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"404": {
"description": "404 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
}
},
"/client/account": {
"get": {
"tags": [
"Client"
],
"summary": "Get all client records based on an account hash identifier",
"produces": [
"application/json"
],
"parameters": [{
"name": "accountHashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/ArrayOfClients"
}
},
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"404": {
"description": "404 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
}
},
"/client/search/account/application": {
"get": {
"tags": [
"Client"
],
"summary": "Search client based on a query parameter, account hash identifier and application",
"produces": [
"application/json"
],
"parameters": [
{
"name": "application",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "accountHashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "query",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "pageRowsCount",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/ArrayOfClients"
}
},
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"404": {
"description": "404 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"500": {
"description": "500 response"
}
},
"security": [
{
"jwt-rsa-custom-authorizer": []
}
]
}
},
"/documentdata": {
"get": {
"tags": [
"DocumentData"
],
"summary": "Get by Document Data hash identifier",
"produces": [
"application/json"
],
"parameters": [{
"name": "hashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/DocumentData"
}
},
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"404": {
"description": "404 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
},
"delete": {
"tags": [
"DocumentData"
],
"summary": "Delete Document based on its hash identifier",
"produces": [
"application/json"
],
"parameters": [{
"name": "hashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": true,
"type": "string"
}
],
"responses": {
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"404": {
"description": "404 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
}
},
"/documentdata/account": {
"get": {
"tags": [
"DocumentData"
],
"summary": "Get all documents based on an account hash identifier",
"produces": [
"application/json"
],
"parameters": [{
"name": "accountHashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/ArrayOfDocumentData"
}
},
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"404": {
"description": "404 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
}
},
"/documentdata/client": {
"get": {
"tags": [
"DocumentData"
],
"summary": "Get all documents based on an account hash identifier and client hash identifier",
"produces": [
"application/json"
],
"parameters": [{
"name": "accountHashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "clientHashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/ArrayOfDocumentData"
}
},
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"404": {
"description": "404 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
}
},
"/event": {
"get": {
"tags": [
"Event"
],
"summary": "Get a list of events based on the account identifier, when the last event number and return items based on the number of rows requested",
"produces": [
"application/json"
],
"parameters": [{
"name": "direction",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "accountHashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "eventPositionFrom",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": true,
"type": "string"
},
{
"name": "rowsReturned",
"in": "query",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/ArrayOfEventEntries"
}
},
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"404": {
"description": "404 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
}
},
"/event/info": {
"get": {
"tags": [
"Event"
],
"summary": "Get the last event entry and the feed link to subscribe to",
"produces": [
"application/json"
],
"parameters": [{
"name": "accountHashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/EventFeedInfo"
}
},
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"404": {
"description": "404 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
}
},
"/event/subscription": {
"get": {
"tags": [
"Webhooks"
],
"description": "Get webhook subscription details based on account hash id",
"produces": [
"application/json"
],
"parameters": [{
"name": "hashId",
"in": "query",
"required": true,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/WebhookProvision"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
},
"post": {
"tags": [
"Webhooks"
],
"description": "Create or update webhook subscription",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [{
"name": "hashId",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "Authorization",
"in": "header",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/WebhookProvision"
}
},
"400": {
"description": "400 response"
},
"401": {
"description": "401 response"
},
"500": {
"description": "500 response"
}
},
"security": [{
"jwt-rsa-custom-authorizer": []
}]
}
},
"/file/detail": {
"get": {
"tags": [
"File"
],
"summary": "Get file details",
"produces": [
"application/json"
],
"parameters": [
{
"name": "accountHashId",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "clientHashId",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "key",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "Authorization",
"in": "header",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/FileDetail"
}
},
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response",
"content": {}
},
"401": {
"description": "401 response",
"content": {}
},
"404": {
"description": "404 response",
"content": {}
},
"500": {
"description": "500 response",
"content": {}
}
},
"security": [
{
"jwt-rsa-custom-authorizer": []
}
]
}
},
"/file/download": {
"get": {
"tags": [
"File"
],
"summary": "Get the file downloadUrl",
"produces": [
"application/json"
],
"parameters": [
{
"name": "accountHashId",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "clientHashId",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "key",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "Authorization",
"in": "header",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/FileDownload"
}
},
"204": {
"description": "204 response",
"schema": {
"$ref": "#/definitions/Empty"
}
},
"400": {
"description": "400 response",
"content": {}
},
"401": {
"description": "401 response",
"content": {}
},
"404": {
"description": "404 response",
"content": {}
},
"500": {
"description": "500 response",
"content": {}
}
},
"security": [
{
"jwt-rsa-custom-authorizer": []
}
]
}
},
"/ping": {
"get": {
"tags": [
"Healthcheck"
],
"summary": "Site Healthcheck",
"produces": [
"application/json"
],
"responses": {
"200": {
"description": "200 response",
"schema": {
"$ref": "#/definitions/Ping"
}
},
"500": {
"description": "500 response"
}
}
}
}
},
"securityDefinitions": {
"jwt-rsa-custom-authorizer": {
"type": "apiKey",
"name": "Authorization",
"in": "header",
"x-amazon-apigateway-authtype": "custom"
}
},
"definitions": {
"Account": {
"type": "object",
"properties": {
"hashId": {
"type": "string",
"description": "Account Hash Identifier"
},
"name": {
"type": "string"
},
"businessType": {
"type": "string"
},
"companyType": {
"type": "string"
},
"country": {
"type": "string"
},
"address": {
"$ref": "#/definitions/PhysicalAddress"
},
"email": {
"type": "string"
},
"telephone": {
"type": "string"
},
"operatesAs": {
"type": "string"
},
"practiceAppointment": {
"type": "string"
},
"practiceName": {
"type": "string"
},
"practiceAddress": {
"$ref": "#/definitions/PhysicalAddress"
},
"practiceTelephone": {
"type": "string"
},
"practiceEmail": {
"type": "string"
},
"trustAppointment": {
"type": "string"
},
"trustName": {
"type": "string"
},
"trustAddress": {
"$ref": "#/definitions/PhysicalAddress"
},
"trustTelephone": {
"type": "string"
},
"trustEmail": {
"type": "string"
},
"createdOn": {
"type": "string",
"format": "date-time"
},
"updatedOn": {
"type": "string",
"format": "date-time"
}
},
"title": "Arken Account Model",
"description": "Arken Account Details"
},
"WebhookProvision": {
"type": "object",
"properties": {
"accountHashId": {
"type": "string",
"description": "Account Hash Identifier"
},
"postUrl": {
"type": "string"
},
"version": {
"type": "string"
},
"postAuth": {
"$ref": "#/definitions/WebhookProvisionAuth"
},
"active": {
"type": "string"
}
},
"title": "Arken Webhook Provision Model",
"description": "Arken Webhook Provision Details"
},
"ArrayOfClients": {
"title": "Arken Client Array Model",
"type": "array",
"description": "Arken Client Array Details",
"items": {
"$ref": "#/definitions/Client"
}
},
"EventFeedInfo": {
"type": "object",
"properties": {
"feedLink": {
"type": "string"
},
"lastEventNumber": {
"type": "string"
},
"lastEventFeed": {
"$ref": "#/definitions/EventEntry"
}
},
"title": "Arken Event Feed Info Model",
"description": "Arken Event Feed Info Data"
},
"ArrayOfDocumentData": {
"title": "Arken DocumentData Array Model",
"type": "array",
"description": "Arken DocumentData Array Details",
"items": {
"$ref": "#/definitions/DocumentData"
}
},
"ArrayOfEventEntries": {
"title": "Arken Event Entries Array Model",
"type": "array",
"description": "Arken Event Entries Array Details",
"items": {
"$ref": "#/definitions/EventEntry"
}
},
"PhysicalAddress": {
"type": "object",
"properties": {
"street": {
"type": "string"
},
"suburb": {
"type": "string"
},
"city": {
"type": "string"
},
"region": {
"type": "string"
},
"postcode": {
"type": "string"
},
"country": {
"type": "string"
}
},
"title": "Arken Common Address Model",
"description": "Physical address format for Arken"
},
"Name": {
"type": "object",
"properties": {
"first": {
"type": "string"
},
"middle": {
"type": "string"
},
"surname": {
"type": "string"
},
"fullName": {
"type": "string"
}
},
"title": "Arken Common Name Model",
"description": "Person's structured name model"
},
"DocumentData": {
"type": "object",
"properties": {
"accountHashId": {
"type": "string"
},
"clientHashId": {
"type": "string"
},
"hashId": {
"type": "string"
},
"clientMatterReference": {
"type": "string"
},
"documentType": {
"type": "string"
},
"version": {
"type": "string"
},
"jurisdiction": {
"type": "string"
},
"content": {
"type": "object",
"properties": {}
},
"createdOn": {
"type": "string",
"format": "date-time"
},
"updatedOn": {
"type": "string",
"format": "date-time"
},
"settings" : {
"type" : "object",
"properties" : {
"currentDocumentKey": { "type":"string"}
}
}
},
"title": "Arken Document Data Model",
"description": "Arken Document Data"
},
"Empty": {
"type": "object",
"title": "Empty Schema"
},
"EventEntry": {
"type": "object",
"properties": {
"eventId": {
"type": "string"
},
"eventType": {
"type": "string"
},
"eventNumber": {
"type": "number"
},
"eventDateTimeUtc": {
"type": "string"
},
"link": {
"type": "string"
},
"properties": {
"type": "object",
"properties": {}
}
},
"title": "Arken Event Entry Model",
"description": "Arken Event Entry Data"
},
"Ping": {
"type": "object",
"title": "Arken Healthcheck",
"description": "Arken Healthcheck Ping"
},
"Client": {
"type": "object",
"properties": {
"hashId": {
"type": "string",
"description": "Client Hash Identifier"
},
"accountHashId": {
"type": "string",
"description": "Account Hash Identifier"
},
"title": {
"type": "string"
},
"name": {
"$ref": "#/definitions/Name"
},
"gender": {
"type": "string"
},
"maritalStatus": {
"type": "string"
},
"email": {
"type": "string"
},
"address": {
"$ref": "#/definitions/PhysicalAddress"
},
"dateOfBirth": {
"type": "string",
"format": "date-time"
},
"mobile": {
"type": "string"
},
"telephone": {
"type": "string"
},
"partnerName": {
"$ref": "#/definitions/Name"
},
"partnerGender": {
"type": "string"
},
"partnerTitle": {
"type": "string"
},
"partnerDateOfBirth": {
"type": "string",
"format": "date-time"
},
"createdOn": {
"type": "string",
"format": "date-time"
},
"updatedOn": {
"type": "string",
"format": "date-time"
},
"externalReference": {
"type": "string"
},
"partnerHashId": {
"type": "string"
},
"application": {
"type": "string"
},
"extensiondata": {
"type": "object"
}
},
"title": "Arken Client Model",
"description": "Arken Client Details"
},
"FileDetail": {
"type" : "object",
"properties" : {
"accountHashId" : {
"type" : "string"
},
"clientHashId" : {
"type" : "string"
},
"fileKey" : {
"type" : "string"
},
"properties" : {
"type" : "object",
"properties" : { }
}
},
"title" : "Arken File Detail Data Model",
"description" : "Arken File DetailData"
},
"FileDownload": {
"type" : "object",
"properties" : {
"accountHashId" : {
"type" : "string"
},
"clientHashId" : {
"type" : "string"
},
"fileKey" : {
"type" : "string"
},
"downloadUrl" : {
"type" : "object",
"properties" : { }
}
},
"title" : "Arken File Download Model",
"description" : "Arken File Download URL"
},
"WebhookProvisionAuth": {
"type": "object",
"properties": {
"accessKey": {
"type": "string"
},
"secretKey": {
"type": "string"
},
"scope": {
"type": "string"
},
"authurl": {
"type": "string"
},
"granttype": {
"type": "string"
},
"headerName": {
"type": "string"
},
"headerKeyValue": {
"type": "string"
}
},
"title": "Arken Webhook Provisioning Auth",
"description": "Arken Webhook Provisioning Auth"
}
},
"x-amazon-apigateway-policy": {
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": "",
"Condition": {
"IpAddress": {
"aws:SourceIp": []
}
}
}]
}
} |
...