Interface SecurityApi


  • @Path("/")
    public interface SecurityApi
    Pod API

    This document refers to Symphony API calls that do not need encryption or decryption of content. - sessionToken can be obtained by calling the authenticationAPI on the symphony back end and the key manager respectively. Refer to the methods described in authenticatorAPI.yaml. - Actions are defined to be atomic, ie will succeed in their entirety or fail and have changed nothing. - If it returns a 40X status then it will have made no change to the system even if ome subset of the request would have succeeded. - If this contract cannot be met for any reason then this is an error and the response code will be 50X.

    • Method Detail

      • v1CompanycertCreatePost

        @POST
        @Path("/v1/companycert/create")
        @Consumes("application/json")
        @Produces("application/json")
        SuccessResponse v1CompanycertCreatePost​(CompanyCert body,
                                                @HeaderParam("sessionToken")
                                                String sessionToken)
        Create a company trusted or untrusted certificate
      • v1CompanycertDeletePost

        @POST
        @Path("/v1/companycert/delete")
        @Consumes("application/json")
        @Produces("application/json")
        SuccessResponse v1CompanycertDeletePost​(StringId body,
                                                @HeaderParam("sessionToken")
                                                String sessionToken)
        Delete a company certificate
      • v1CompanycertFingerPrintGetGet

        @GET
        @Path("/v1/companycert/{fingerPrint}/get")
        @Produces("application/json")
        CompanyCertDetail v1CompanycertFingerPrintGetGet​(@PathParam("fingerPrint")
                                                         String fingerPrint,
                                                         @HeaderParam("sessionToken")
                                                         String sessionToken)
        Get the details of a company certificate
      • v1CompanycertFingerPrintIssuedByGet

        @GET
        @Path("/v1/companycert/{fingerPrint}/issuedBy")
        @Produces("application/json")
        CompanyCertInfoList v1CompanycertFingerPrintIssuedByGet​(@PathParam("fingerPrint")
                                                                String fingerPrint,
                                                                @HeaderParam("sessionToken")
                                                                String sessionToken)
        Return a list of all certificates which were verified to the cert whose fingerprint is passed.
      • v1CompanycertFingerPrintUpdatePost

        @POST
        @Path("/v1/companycert/{fingerPrint}/update")
        @Consumes("application/json")
        @Produces("application/json")
        SuccessResponse v1CompanycertFingerPrintUpdatePost​(CompanyCertAttributes body,
                                                           @HeaderParam("sessionToken")
                                                           String sessionToken,
                                                           @PathParam("fingerPrint")
                                                           String fingerPrint)
        Update a company certificate
      • v1CompanycertListGet

        @GET
        @Path("/v1/companycert/list")
        @Produces("application/json")
        CompanyCertInfoList v1CompanycertListGet​(@HeaderParam("sessionToken")
                                                 String sessionToken,
                                                 @QueryParam("skip")
                                                 Integer skip,
                                                 @QueryParam("limit")
                                                 Integer limit)
        List all trusted certs
      • v1CompanycertPodmanagedListGet

        @GET
        @Path("/v1/companycert/podmanaged/list")
        @Produces("application/json")
        CompanyCertInfoList v1CompanycertPodmanagedListGet​(@HeaderParam("sessionToken")
                                                           String sessionToken,
                                                           @QueryParam("skip")
                                                           Integer skip,
                                                           @QueryParam("limit")
                                                           Integer limit)
        List all trusted certs
      • v1CompanycertTypeListPost

        @POST
        @Path("/v1/companycert/type/list")
        @Consumes("application/json")
        @Produces("application/json")
        CompanyCertInfoList v1CompanycertTypeListPost​(List<CompanyCertType> body,
                                                      @HeaderParam("sessionToken")
                                                      String sessionToken,
                                                      @QueryParam("skip")
                                                      Integer skip,
                                                      @QueryParam("limit")
                                                      Integer limit)
        List all certs of the given types
      • v2CompanycertCreatePost

        @POST
        @Path("/v2/companycert/create")
        @Consumes("application/json")
        @Produces("application/json")
        CompanyCertDetail v2CompanycertCreatePost​(CompanyCert body,
                                                  @HeaderParam("sessionToken")
                                                  String sessionToken)
        Create a company trusted or untrusted certificate. Different from V1 in that we reject expired certificates.