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": [] }] } }, "/client/account": { "getdelete": { "tags": [ "Client" ], "summary": "Get allDelete client records based on an accountits hash identifier", "produces": [ "application/json" ], "parameters": [{ "name": "accountHashIdhashId", "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": "SearchGet all client records based on aan query parameter, account hash identifier and application", "produces": [ "application/json" ], "parameters": [ { { "name": "applicationaccountHashId", "in": "query", "required": true, "type": "string" }, { }, { "name": "accountHashIdAuthorization", "in": "queryheader", "required": true, "type": "string" } ], "responses": { "200": }, { "name": "query", "in": "query", "required": true, "type": "string" }, { "name": "pageRowsCount", "in": "query", "required": false, "type": "string" }, { "name": "Authorization", "in": "header", { "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", "requiredproduces": false,[ "type": "string"application/json" ], } "parameters": [ ], "responses": { "200name": {"application", "descriptionin": "200 response""query", "required": true, "schematype": "string" }, { "name": "accountHashId", "$refin": "query", "#/definitions/ArrayOfClients" "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 by Document Data all documents based on an account hash identifier", "produces": [ "application/json" ], "parameters": [{ "name": "hashIdaccountHashId", "in": "query", "required": true, "type": "string" }, { "name": "Authorization", "in": "header", "required": falsetrue, "type": "string" } ], "responses": { "200": { "description": "200 response", "schema": { "$ref": "#/definitions/DocumentDataArrayOfDocumentData" } }, "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/client": { "getdelete": { "tags": [ "DocumentData" ], "summary": "GetDelete allAll documentsDocuments based on an account hash identifier and client hash identifier", "produces": [ "application/json" ], "parameters": [{ "name": "accountHashId", "in": "query", "required": true, "type": "string" }, { "name": "AuthorizationclientHashId", "in": "headerquery", "required": true, "type": "string" }, ], "responses": { "200name": {"Authorization", "descriptionin": "200 responseheader", "schemarequired": {true, "$reftype": "#/definitions/ArrayOfDocumentDatastring" } },], "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/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": [] } } }] } } |
...