# Provider

Certificate provider used to renew certificates before their expiry.

This tag groups all operations for provider.

## Retrieve all Provider

> This endpoint enables retrieving all Provider using\
> pagination and optional filters.<br>

```json
{"openapi":"3.0.3","info":{"title":"Certificate Manager Service API","version":"2.0"},"tags":[{"name":"Provider","description":"Certificate provider used to renew certificates before their expiry.\n\nThis tag groups all operations for provider.\n"}],"servers":[{"url":"https://certificate-manager.de-fra.ionos.com","description":"Frankfurt"}],"security":[{"tokenAuth":[]}],"components":{"securitySchemes":{"tokenAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"The token can be generated using the \n[Authentication API](https://api.ionos.com/docs/authentication/v1/#tag/tokens/operation/tokensGenerate).\n"}},"parameters":{"paginationOffset":{"name":"offset","in":"query","description":"The first element (of the total list of elements) to include in the response. Use together with limit for pagination.","required":false,"schema":{"type":"integer","format":"int32","default":0,"minimum":0}},"paginationLimit":{"name":"limit","in":"query","description":"The maximum number of elements to return. Use together with offset for pagination.","required":false,"schema":{"type":"integer","format":"int32","default":100,"minimum":1,"maximum":1000}}},"schemas":{"ProviderReadList":{"allOf":[{"type":"object","required":["id","type","href"],"properties":{"id":{"description":"ID of the list of Provider resources.","type":"string","format":"uuid"},"type":{"description":"The type of the resource.","type":"string","enum":["collection"]},"href":{"description":"The URL of the list of Provider resources.","type":"string"},"items":{"description":"The list of Provider resources.","type":"array","items":{"$ref":"#/components/schemas/ProviderRead"}}}},{"$ref":"#/components/schemas/Pagination"}]},"ProviderRead":{"type":"object","required":["id","type","href","metadata","properties"],"properties":{"id":{"type":"string","description":"The ID (UUID) of the Provider.","format":"uuid"},"type":{"description":"The type of the resource.","type":"string","enum":["provider"]},"href":{"description":"The URL of the Provider.","type":"string"},"metadata":{"$ref":"#/components/schemas/MetadataWithStatus"},"properties":{"$ref":"#/components/schemas/Provider"}}},"MetadataWithStatus":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/Metadata"},{"type":"object","required":["state","message"],"properties":{"state":{"type":"string","description":"The resource state.","enum":["PROVISIONING","AVAILABLE","FAILED"]},"message":{"type":"string","description":"A human readable message describing the current state.\nIn case of an error, the message will contain a detailed error message.\n"}}}]},"Metadata":{"type":"object","description":"Metadata of the resource.","properties":{"createdDate":{"type":"string","format":"date-time","description":"The ISO 8601 creation timestamp.","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"Unique id of the identity that created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","format":"date-time","description":"The ISO 8601 modified timestamp.","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"Unique id of the identity that last modified the resource.","readOnly":true},"resourceURN":{"type":"string","description":"Unique name of the resource.","readOnly":true}}},"Provider":{"description":"Certificate provider used to renew certificates before their expiry.\n","type":"object","required":["name","email","server"],"properties":{"name":{"type":"string","description":"The name of the certificate provider."},"email":{"type":"string","description":"The email address of the certificate requester."},"server":{"type":"string","description":"The URL of the certificate provider."},"externalAccountBinding":{"type":"object","properties":{"keyId":{"type":"string","description":"The key ID of the external account binding."},"keySecret":{"type":"string","description":"The secret of the external account binding.","writeOnly":true}}}}},"Pagination":{"required":["offset","limit","_links"],"description":"Pagination information. The offset and limit parameters are used to\nnavigate the list of elements. The _links object contains URLs to\nnavigate the different pages.\n","type":"object","properties":{"offset":{"$ref":"#/components/schemas/Offset"},"limit":{"$ref":"#/components/schemas/Limit"},"_links":{"$ref":"#/components/schemas/Links"}}},"Offset":{"description":"The offset specified in the request (if none was specified, the default\noffset is 0).\n","type":"integer","minimum":0,"readOnly":true},"Limit":{"description":"The limit specified in the request (if none was specified, use the\nendpoint's default pagination limit).\n","type":"integer","minimum":0,"readOnly":true},"Links":{"description":"URLs to navigate the different pages. As of now we always only return a\nsingle page.\n","type":"object","properties":{"prev":{"description":"URL (with offset and limit parameters) of the previous page; only\npresent if offset is greater than 0.\n","type":"string","format":"uri","readOnly":true},"self":{"description":"URL (with offset and limit parameters) of the current page.\n","type":"string","format":"uri","readOnly":true},"next":{"description":"URL (with offset and limit parameters) of the next page; only\npresent if offset + limit is less than the total number of elements.\n","type":"string","format":"uri","readOnly":true}}},"Error":{"description":"The Error object is used to represent an error response from the API.\n","type":"object","properties":{"httpStatus":{"type":"integer","description":"The HTTP status code of the operation."},"messages":{"type":"array","description":"A list of error messages.\n","items":{"type":"object","properties":{"errorCode":{"type":"string","description":"Application internal error code\n"},"message":{"type":"string","description":"A human readable explanation specific to this occurrence of the\nproblem.\n"}}}}}}},"responses":{"BadRequest":{"description":"### Bad Request\nThe request send to the API was malformed.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Unauthorized":{"description":"### Unauthorized\nThe request is missing authorization information or the authorization information provided are expired.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotAllowed":{"description":"### Not Allowed\nThe user issuing the request does not have the needed permissions.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"TooManyRequests":{"description":"### Too Many Requests\nThe user has sent too many requests in a given amount of time.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"InternalError":{"description":"### Internal Server Error\nAn internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ServiceUnavailable":{"description":"### Service Unavailable\nThe server is currently unable to handle the request due to a temporary overloading or maintenance of the server.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"UnexpectedError":{"description":"### Unexpected Internal Server Error\nAn unexpected internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/providers":{"get":{"operationId":"providersGet","summary":"Retrieve all Provider","description":"This endpoint enables retrieving all Provider using\npagination and optional filters.\n","parameters":[{"$ref":"#/components/parameters/paginationOffset"},{"$ref":"#/components/parameters/paginationLimit"}],"tags":["Provider"],"responses":{"200":{"description":"Returned all requested Provider successfully.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderReadList"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/NotAllowed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"},"default":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```

## Create Provider

> Creates a new Provider.\
> \
> The full Provider needs to be provided to create the object.\
> Optional data will be filled with defaults or left empty.<br>

```json
{"openapi":"3.0.3","info":{"title":"Certificate Manager Service API","version":"2.0"},"tags":[{"name":"Provider","description":"Certificate provider used to renew certificates before their expiry.\n\nThis tag groups all operations for provider.\n"}],"servers":[{"url":"https://certificate-manager.de-fra.ionos.com","description":"Frankfurt"}],"security":[{"tokenAuth":[]}],"components":{"securitySchemes":{"tokenAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"The token can be generated using the \n[Authentication API](https://api.ionos.com/docs/authentication/v1/#tag/tokens/operation/tokensGenerate).\n"}},"schemas":{"ProviderCreate":{"type":"object","required":["properties"],"properties":{"metadata":{"description":"Metadata","additionalProperties":true},"properties":{"$ref":"#/components/schemas/Provider"}}},"Provider":{"description":"Certificate provider used to renew certificates before their expiry.\n","type":"object","required":["name","email","server"],"properties":{"name":{"type":"string","description":"The name of the certificate provider."},"email":{"type":"string","description":"The email address of the certificate requester."},"server":{"type":"string","description":"The URL of the certificate provider."},"externalAccountBinding":{"type":"object","properties":{"keyId":{"type":"string","description":"The key ID of the external account binding."},"keySecret":{"type":"string","description":"The secret of the external account binding.","writeOnly":true}}}}},"ProviderRead":{"type":"object","required":["id","type","href","metadata","properties"],"properties":{"id":{"type":"string","description":"The ID (UUID) of the Provider.","format":"uuid"},"type":{"description":"The type of the resource.","type":"string","enum":["provider"]},"href":{"description":"The URL of the Provider.","type":"string"},"metadata":{"$ref":"#/components/schemas/MetadataWithStatus"},"properties":{"$ref":"#/components/schemas/Provider"}}},"MetadataWithStatus":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/Metadata"},{"type":"object","required":["state","message"],"properties":{"state":{"type":"string","description":"The resource state.","enum":["PROVISIONING","AVAILABLE","FAILED"]},"message":{"type":"string","description":"A human readable message describing the current state.\nIn case of an error, the message will contain a detailed error message.\n"}}}]},"Metadata":{"type":"object","description":"Metadata of the resource.","properties":{"createdDate":{"type":"string","format":"date-time","description":"The ISO 8601 creation timestamp.","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"Unique id of the identity that created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","format":"date-time","description":"The ISO 8601 modified timestamp.","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"Unique id of the identity that last modified the resource.","readOnly":true},"resourceURN":{"type":"string","description":"Unique name of the resource.","readOnly":true}}},"Error":{"description":"The Error object is used to represent an error response from the API.\n","type":"object","properties":{"httpStatus":{"type":"integer","description":"The HTTP status code of the operation."},"messages":{"type":"array","description":"A list of error messages.\n","items":{"type":"object","properties":{"errorCode":{"type":"string","description":"Application internal error code\n"},"message":{"type":"string","description":"A human readable explanation specific to this occurrence of the\nproblem.\n"}}}}}}},"responses":{"BadRequest":{"description":"### Bad Request\nThe request send to the API was malformed.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Unauthorized":{"description":"### Unauthorized\nThe request is missing authorization information or the authorization information provided are expired.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotAllowed":{"description":"### Not Allowed\nThe user issuing the request does not have the needed permissions.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"UnsupportedMediaType":{"description":"### Unsupported Media Type\nThe request has an unsupported media type.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"UnprocessableEntity":{"description":"### Unprocessable Entity\nThe request was well-formed but was unable to be followed due to semantic errors.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"TooManyRequests":{"description":"### Too Many Requests\nThe user has sent too many requests in a given amount of time.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"InternalError":{"description":"### Internal Server Error\nAn internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ServiceUnavailable":{"description":"### Service Unavailable\nThe server is currently unable to handle the request due to a temporary overloading or maintenance of the server.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"UnexpectedError":{"description":"### Unexpected Internal Server Error\nAn unexpected internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/providers":{"post":{"operationId":"providersPost","summary":"Create Provider","tags":["Provider"],"description":"Creates a new Provider.\n\nThe full Provider needs to be provided to create the object.\nOptional data will be filled with defaults or left empty.\n","requestBody":{"description":"Provider to create.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderCreate"}}}},"responses":{"201":{"description":"Provider successfully created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderRead"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/NotAllowed"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"},"default":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```

## Retrieve Provider

> Returns the Provider by ID.

```json
{"openapi":"3.0.3","info":{"title":"Certificate Manager Service API","version":"2.0"},"tags":[{"name":"Provider","description":"Certificate provider used to renew certificates before their expiry.\n\nThis tag groups all operations for provider.\n"}],"servers":[{"url":"https://certificate-manager.de-fra.ionos.com","description":"Frankfurt"}],"security":[{"tokenAuth":[]}],"components":{"securitySchemes":{"tokenAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"The token can be generated using the \n[Authentication API](https://api.ionos.com/docs/authentication/v1/#tag/tokens/operation/tokensGenerate).\n"}},"schemas":{"ProviderRead":{"type":"object","required":["id","type","href","metadata","properties"],"properties":{"id":{"type":"string","description":"The ID (UUID) of the Provider.","format":"uuid"},"type":{"description":"The type of the resource.","type":"string","enum":["provider"]},"href":{"description":"The URL of the Provider.","type":"string"},"metadata":{"$ref":"#/components/schemas/MetadataWithStatus"},"properties":{"$ref":"#/components/schemas/Provider"}}},"MetadataWithStatus":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/Metadata"},{"type":"object","required":["state","message"],"properties":{"state":{"type":"string","description":"The resource state.","enum":["PROVISIONING","AVAILABLE","FAILED"]},"message":{"type":"string","description":"A human readable message describing the current state.\nIn case of an error, the message will contain a detailed error message.\n"}}}]},"Metadata":{"type":"object","description":"Metadata of the resource.","properties":{"createdDate":{"type":"string","format":"date-time","description":"The ISO 8601 creation timestamp.","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"Unique id of the identity that created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","format":"date-time","description":"The ISO 8601 modified timestamp.","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"Unique id of the identity that last modified the resource.","readOnly":true},"resourceURN":{"type":"string","description":"Unique name of the resource.","readOnly":true}}},"Provider":{"description":"Certificate provider used to renew certificates before their expiry.\n","type":"object","required":["name","email","server"],"properties":{"name":{"type":"string","description":"The name of the certificate provider."},"email":{"type":"string","description":"The email address of the certificate requester."},"server":{"type":"string","description":"The URL of the certificate provider."},"externalAccountBinding":{"type":"object","properties":{"keyId":{"type":"string","description":"The key ID of the external account binding."},"keySecret":{"type":"string","description":"The secret of the external account binding.","writeOnly":true}}}}},"Error":{"description":"The Error object is used to represent an error response from the API.\n","type":"object","properties":{"httpStatus":{"type":"integer","description":"The HTTP status code of the operation."},"messages":{"type":"array","description":"A list of error messages.\n","items":{"type":"object","properties":{"errorCode":{"type":"string","description":"Application internal error code\n"},"message":{"type":"string","description":"A human readable explanation specific to this occurrence of the\nproblem.\n"}}}}}}},"responses":{"BadRequest":{"description":"### Bad Request\nThe request send to the API was malformed.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Unauthorized":{"description":"### Unauthorized\nThe request is missing authorization information or the authorization information provided are expired.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotAllowed":{"description":"### Not Allowed\nThe user issuing the request does not have the needed permissions.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotFound":{"description":"### Not Found\nThe resource that was requested could not be found.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"TooManyRequests":{"description":"### Too Many Requests\nThe user has sent too many requests in a given amount of time.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"InternalError":{"description":"### Internal Server Error\nAn internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ServiceUnavailable":{"description":"### Service Unavailable\nThe server is currently unable to handle the request due to a temporary overloading or maintenance of the server.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"UnexpectedError":{"description":"### Unexpected Internal Server Error\nAn unexpected internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/providers/{providerId}":{"get":{"operationId":"providersFindById","summary":"Retrieve Provider","tags":["Provider"],"description":"Returns the Provider by ID.","parameters":[{"name":"providerId","in":"path","schema":{"type":"string","format":"uuid"},"required":true,"description":"The ID (UUID) of the Provider."}],"responses":{"200":{"description":"Getting Provider was successful.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderRead"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/NotAllowed"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"},"default":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```

## Delete Provider

> Deletes the specified Provider.

```json
{"openapi":"3.0.3","info":{"title":"Certificate Manager Service API","version":"2.0"},"tags":[{"name":"Provider","description":"Certificate provider used to renew certificates before their expiry.\n\nThis tag groups all operations for provider.\n"}],"servers":[{"url":"https://certificate-manager.de-fra.ionos.com","description":"Frankfurt"}],"security":[{"tokenAuth":[]}],"components":{"securitySchemes":{"tokenAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"The token can be generated using the \n[Authentication API](https://api.ionos.com/docs/authentication/v1/#tag/tokens/operation/tokensGenerate).\n"}},"responses":{"BadRequest":{"description":"### Bad Request\nThe request send to the API was malformed.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Unauthorized":{"description":"### Unauthorized\nThe request is missing authorization information or the authorization information provided are expired.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotAllowed":{"description":"### Not Allowed\nThe user issuing the request does not have the needed permissions.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotFound":{"description":"### Not Found\nThe resource that was requested could not be found.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"TooManyRequests":{"description":"### Too Many Requests\nThe user has sent too many requests in a given amount of time.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"InternalError":{"description":"### Internal Server Error\nAn internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ServiceUnavailable":{"description":"### Service Unavailable\nThe server is currently unable to handle the request due to a temporary overloading or maintenance of the server.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"UnexpectedError":{"description":"### Unexpected Internal Server Error\nAn unexpected internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"schemas":{"Error":{"description":"The Error object is used to represent an error response from the API.\n","type":"object","properties":{"httpStatus":{"type":"integer","description":"The HTTP status code of the operation."},"messages":{"type":"array","description":"A list of error messages.\n","items":{"type":"object","properties":{"errorCode":{"type":"string","description":"Application internal error code\n"},"message":{"type":"string","description":"A human readable explanation specific to this occurrence of the\nproblem.\n"}}}}}}}},"paths":{"/providers/{providerId}":{"delete":{"operationId":"providersDelete","summary":"Delete Provider","tags":["Provider"],"description":"Deletes the specified Provider.","parameters":[{"name":"providerId","in":"path","schema":{"type":"string","format":"uuid"},"required":true,"description":"The ID (UUID) of the Provider."}],"responses":{"202":{"description":"Deleting Provider was successful."},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/NotAllowed"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"},"default":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```

## Updates Provider

> Changes Provider with the provided ID.\
> Values provides will replace the existing data.<br>

```json
{"openapi":"3.0.3","info":{"title":"Certificate Manager Service API","version":"2.0"},"tags":[{"name":"Provider","description":"Certificate provider used to renew certificates before their expiry.\n\nThis tag groups all operations for provider.\n"}],"servers":[{"url":"https://certificate-manager.de-fra.ionos.com","description":"Frankfurt"}],"security":[{"tokenAuth":[]}],"components":{"securitySchemes":{"tokenAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"The token can be generated using the \n[Authentication API](https://api.ionos.com/docs/authentication/v1/#tag/tokens/operation/tokensGenerate).\n"}},"schemas":{"ProviderPatch":{"type":"object","required":["properties"],"properties":{"metadata":{"description":"Metadata","additionalProperties":true},"properties":{"$ref":"#/components/schemas/PatchName"}}},"PatchName":{"required":["name"],"properties":{"name":{"type":"string","description":"The new name."}}},"ProviderRead":{"type":"object","required":["id","type","href","metadata","properties"],"properties":{"id":{"type":"string","description":"The ID (UUID) of the Provider.","format":"uuid"},"type":{"description":"The type of the resource.","type":"string","enum":["provider"]},"href":{"description":"The URL of the Provider.","type":"string"},"metadata":{"$ref":"#/components/schemas/MetadataWithStatus"},"properties":{"$ref":"#/components/schemas/Provider"}}},"MetadataWithStatus":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/Metadata"},{"type":"object","required":["state","message"],"properties":{"state":{"type":"string","description":"The resource state.","enum":["PROVISIONING","AVAILABLE","FAILED"]},"message":{"type":"string","description":"A human readable message describing the current state.\nIn case of an error, the message will contain a detailed error message.\n"}}}]},"Metadata":{"type":"object","description":"Metadata of the resource.","properties":{"createdDate":{"type":"string","format":"date-time","description":"The ISO 8601 creation timestamp.","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"Unique id of the identity that created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","format":"date-time","description":"The ISO 8601 modified timestamp.","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"Unique id of the identity that last modified the resource.","readOnly":true},"resourceURN":{"type":"string","description":"Unique name of the resource.","readOnly":true}}},"Provider":{"description":"Certificate provider used to renew certificates before their expiry.\n","type":"object","required":["name","email","server"],"properties":{"name":{"type":"string","description":"The name of the certificate provider."},"email":{"type":"string","description":"The email address of the certificate requester."},"server":{"type":"string","description":"The URL of the certificate provider."},"externalAccountBinding":{"type":"object","properties":{"keyId":{"type":"string","description":"The key ID of the external account binding."},"keySecret":{"type":"string","description":"The secret of the external account binding.","writeOnly":true}}}}},"Error":{"description":"The Error object is used to represent an error response from the API.\n","type":"object","properties":{"httpStatus":{"type":"integer","description":"The HTTP status code of the operation."},"messages":{"type":"array","description":"A list of error messages.\n","items":{"type":"object","properties":{"errorCode":{"type":"string","description":"Application internal error code\n"},"message":{"type":"string","description":"A human readable explanation specific to this occurrence of the\nproblem.\n"}}}}}}},"responses":{"BadRequest":{"description":"### Bad Request\nThe request send to the API was malformed.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Unauthorized":{"description":"### Unauthorized\nThe request is missing authorization information or the authorization information provided are expired.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotAllowed":{"description":"### Not Allowed\nThe user issuing the request does not have the needed permissions.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotFound":{"description":"### Not Found\nThe resource that was requested could not be found.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Conflict":{"description":"### Conflict\nThe UUID is already taken by another party, follow the guides to generate UUIDs uniquely.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"UnsupportedMediaType":{"description":"### Unsupported Media Type\nThe request has an unsupported media type.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"UnprocessableEntity":{"description":"### Unprocessable Entity\nThe request was well-formed but was unable to be followed due to semantic errors.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"TooManyRequests":{"description":"### Too Many Requests\nThe user has sent too many requests in a given amount of time.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"InternalError":{"description":"### Internal Server Error\nAn internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ServiceUnavailable":{"description":"### Service Unavailable\nThe server is currently unable to handle the request due to a temporary overloading or maintenance of the server.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"UnexpectedError":{"description":"### Unexpected Internal Server Error\nAn unexpected internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/providers/{providerId}":{"patch":{"operationId":"providersPatch","summary":"Updates Provider","tags":["Provider"],"description":"Changes Provider with the provided ID.\nValues provides will replace the existing data.\n","parameters":[{"name":"providerId","in":"path","schema":{"type":"string","format":"uuid"},"required":true,"description":"The ID (UUID) of the Provider."}],"requestBody":{"description":"patch Provider","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderPatch"}}}},"responses":{"200":{"description":"Provider successfully updated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderRead"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/NotAllowed"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"},"default":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```
