Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Beskrivning

API som används framför Formpipe LTA:s WCF-baserade API som ett REST-API, för att möjliggöra för Java-baserade tjänster och klienter att långtidsarkivera dokument.

Livscykelstatus

Test

Lösningsbeskrivning

TBD

Hantering av personuppgifter

Inga personuppgifter hanteras i tjänsten.

API-specifikation

Swagger ui
{
    "x-generator": "NSwag v13.14.5.0 (NJsonSchema v10.5.2.0 (Newtonsoft.Json v12.0.0.0))",
    "openapi": "3.0.0",
    "info": {
        "title": "FormPipeProxy API",
        "version": "1.0"
    },
    "servers": [
        {
            "url": "http://localhost:8088"
        }
    ],
    "paths": {
        "/api/import": {
            "post": {
                "tags": [
                    "FormpipeProxy"
                ],
                "operationId": "import",
                "requestBody": {
                    "x-name": "request",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ImportRequest"
                            }
                        }
                    },
                    "required": true,
                    "x-position": 1
                },
                "responses": {
                    "200": {
                        "description": "Successful operaiton",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ImportResponse"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Import failure",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ImportResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/FormpipeProxy/WriteToLog": {
            "post": {
                "tags": [
                    "FormpipeProxy"
                ],
                "operationId": "FormpipeProxy_WriteToLog",
                "parameters": [
                    {
                        "name": "text",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "nullable": true
                        },
                        "x-position": 1
                    }
                ],
                "requestBody": {
                    "x-name": "ex",
                    "content": {
                        "application/json": {
                            "schema": {
                                "nullable": true,
                                "oneOf": [
                                    {
                                        "$ref": "#/components/schemas/Exception"
                                    }
                                ]
                            }
                        }
                    },
                    "x-position": 2
                },
                "responses": {
                    "204": {
                        "description": ""
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "ImportResponse": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                    "ErrorDetails": {
                        "nullable": true,
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/ErrorDetails"
                            }
                        ]
                    },
                    "ImportedFileSetId": {
                        "type": "string",
                        "nullable": true
                    }
                }
            },
            "ErrorDetails": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                    "Phase": {
                        "type": "string",
                        "nullable": true
                    },
                    "ErrorCode": {
                        "type": "integer",
                        "format": "int32"
                    },
                    "ErrorId": {
                        "type": "integer",
                        "format": "int32"
                    },
                    "ErrorMessage": {
                        "type": "string",
                        "nullable": true
                    }
                }
            },
            "ImportRequest": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                    "SubmissionAgreementId": {
                        "type": "string",
                        "nullable": true
                    },
                    "Uuid": {
                        "type": "string",
                        "nullable": true
                    },
                    "ConfidentialityLevel": {
                        "type": "integer",
                        "format": "int32"
                    },
                    "ConfidentialityDegradationDate": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "PersonalDataFlag": {
                        "type": "boolean"
                    },
                    "MetadataXml": {
                        "type": "string",
                        "nullable": true
                    },
                    "PreservationObject": {
                        "nullable": true,
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PreservationObject"
                            }
                        ]
                    }
                }
            },
            "PreservationObject": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                    "FileName": {
                        "type": "string",
                        "nullable": true
                    },
                    "FileExtension": {
                        "type": "string",
                        "nullable": true
                    },
                    "Data": {
                        "type": "string",
                        "nullable": true
                    }
                }
            },
            "Exception": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                    "Message": {
                        "type": "string",
                        "nullable": true
                    },
                    "InnerException": {
                        "nullable": true,
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Exception"
                            }
                        ]
                    },
                    "StackTrace": {
                        "type": "string",
                        "nullable": true
                    },
                    "Source": {
                        "type": "string",
                        "nullable": true
                    }
                }
            }
        }
    }
}

Säkerhetsklassning

Säkerhetsklass 0

Autentiseringsmetod: ingen

(Ref: Säkerhetsklassning av APIer)

API-ägare

<Kontaktuppgifter till den verksamhet som äger APIets livscykel>

Teknisk ägare

https://sundsvall.atlassian.net/wiki/spaces/API

För tekniska frågor:
teamdynasty@sundsvall.se

FAQ

<FAQ>