openapi: 3.2.0 info: contact: {} description: "Cloud NGFW uses certificates to access an intelligent feed and to enable outbound decryption. These certificates are stored in the [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html). \n\n### Permission Policies\n\n| Action | Local Firewall Administrator | Local Rulestack Administrator | Global Rulestack Administrator|\n| ----------------------------- | :--------------------------: | :---------------------------: | :---------------------------: |\n| Create a Certificate Object | ☐ | **☑** | **☑** |\n| Delete a Certificate Object | ☐ | **☑** | **☑** | \n| Update a Certificate Object | ☐ | **☑** | **☑** | \n| Describe a Certificate Object | **☑** | **☑** | **☑** |\n| List Certificate Objects | **☑** | **☑** | **☑** |\n" title: Manage Certificate Objects API version: 1.0.0 servers: - url: https://api.us-east-1.aws.cloudngfw.paloaltonetworks.com tags: - name: CertificateObjects paths: /v1/config/rulestacks/{rulestackname}/certificates: get: description: 'Retrieve the list of certificate objects associated with the specified rulestack. ' operationId: get-v1-config-rulestacks-rulestackname-certificates parameters: - description: '' in: path name: rulestackname required: true schema: type: string - description: '' in: query name: nexttoken required: false schema: maxLength: 2048 minLength: 1 pattern: ^[-0-9A-Za-z:\/+=]+$ title: Nexttoken type: string - description: '' in: query name: candidate required: false schema: default: true title: Candidate type: boolean - description: '' in: query name: running required: false schema: default: false title: Running type: boolean - description: '' in: query name: uncommitted required: false schema: default: false title: Uncommitted type: boolean - description: '' in: query name: maxresults required: false schema: default: 1024 maximum: 1024 minimum: 1 title: Maxresults type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListCertificateObjectResponse' description: OK summary: Retrieve certificate objects tags: - CertificateObjects post: description: 'Create a server certificate object for the specified rulestack. ' operationId: post-v1-config-rulestacks-rulestackname-certificates parameters: - description: 'The name of the rulestack. ' in: path name: rulestackname required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateCertificateObjectRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/CreateCertificateObjectResponse' description: OK summary: Create certificate object tags: - CertificateObjects /v1/config/rulestacks/{rulestackname}/certificates/{name}: delete: description: 'Delete a certificate object associated with the specified rulestack. ' operationId: delete-v1-config-rulestacks-rulestackname-certificates-name parameters: - description: 'The name of the rulestack. ' in: path name: rulestackname required: true schema: type: string - description: 'The name of the certificate. ' in: path name: name required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/DeleteCertificateObjectRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/DeleteCertificateObjectResponse' description: OK summary: Delete certificate object tags: - CertificateObjects get: description: 'Retrieve the certificate object metadata associated with the specified rulestack. ' operationId: get-v1-config-rulestacks-rulestackname-certificates-name parameters: - description: 'The name of the rulestack. ' in: path name: rulestackname required: true schema: type: string - description: 'The name of the certificate. ' in: path name: name required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/DescribeCertificateObjectRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/DescribeCertificateObjectResponse' description: OK summary: Retrieve certificate metadata tags: - CertificateObjects put: description: 'Update the certificate object associated with the specified rulestack. ' operationId: put-v1-config-rulestacks-rulestackname-certificates-name parameters: - description: 'The name of the rulestack. ' in: path name: rulestackname required: true schema: type: string - description: 'The name of the certificate. ' in: path name: name required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateCertificateObjectRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/UpdateCertificateObjectResponse' description: OK summary: Update certificate object tags: - CertificateObjects components: schemas: CreateCertificateObjectResponse.CertificateDetails: additionalProperties: false properties: AuditComment: title: Auditcomment type: string CertificateSelfSigned: title: Certificateselfsigned type: boolean CertificateSignerArn: title: Certificatesignerarn type: string Description: title: Description type: string UpdateToken: title: Updatetoken type: string title: CertificateDetails type: object DeleteCertificateObjectResponse: additionalProperties: false properties: Response: $ref: '#/components/schemas/DeleteCertificateObjectResponse.ResponseData' ResponseStatus: $ref: '#/components/schemas/DeleteCertificateObjectResponse.Result' title: DeleteCertificateObjectResponse type: object CreateCertificateObjectResponse: additionalProperties: false properties: Response: $ref: '#/components/schemas/CreateCertificateObjectResponse.ResponseData' ResponseStatus: $ref: '#/components/schemas/CreateCertificateObjectResponse.Result' title: CreateCertificateObjectResponse type: object DescribeCertificateObjectResponse.ResponseData: additionalProperties: false properties: CertificateObjectCandidate: $ref: '#/components/schemas/DescribeCertificateObjectResponse.CertificateDetails' CertificateObjectRunning: $ref: '#/components/schemas/DescribeCertificateObjectResponse.CertificateDetails' Name: title: Name type: string RuleStackName: title: Rulestackname type: string title: ResponseData type: object DescribeCertificateObjectResponse: additionalProperties: false properties: Response: $ref: '#/components/schemas/DescribeCertificateObjectResponse.ResponseData' ResponseStatus: $ref: '#/components/schemas/DescribeCertificateObjectResponse.Result' title: DescribeCertificateObjectResponse type: object CreateCertificateObjectResponse.Result: additionalProperties: false properties: ErrorCode: default: 0 title: Errorcode type: integer Reason: title: Reason type: string title: Result type: object ListCertificateObjectResponse.Result: additionalProperties: false properties: ErrorCode: default: 0 title: Errorcode type: integer Reason: title: Reason type: string title: Result type: object CreateCertificateObjectRequest: additionalProperties: false properties: AuditComment: maxLength: 512 title: Auditcomment type: string CertificateSelfSigned: default: false title: Certificateselfsigned type: boolean CertificateSignerArn: title: Certificatesignerarn type: string Description: maxLength: 512 title: Description type: string Name: maxLength: 63 minLength: 1 pattern: ^[a-zA-Z0-9-]+$ title: Name type: string required: - Name title: CreateCertificateObjectRequest type: object UpdateCertificateObjectResponse: additionalProperties: false properties: Response: $ref: '#/components/schemas/UpdateCertificateObjectResponse.ResponseData' ResponseStatus: $ref: '#/components/schemas/UpdateCertificateObjectResponse.Result' title: UpdateCertificateObjectResponse type: object UpdateCertificateObjectResponse.Result: additionalProperties: false properties: ErrorCode: default: 0 title: Errorcode type: integer Reason: title: Reason type: string title: Result type: object DeleteCertificateObjectResponse.ResponseData: additionalProperties: false properties: CertificateObjectEntry: $ref: '#/components/schemas/DeleteCertificateObjectResponse.CertificateDetails' Name: title: Name type: string RuleStackName: title: Rulestackname type: string title: ResponseData type: object ListCertificateObjectResponse.ResponseData: additionalProperties: false properties: CertificateObjectCandidate: items: type: string title: Certificateobjectcandidate type: array CertificateObjectRunning: items: type: string title: Certificateobjectrunning type: array CertificateObjectUncommitted: items: $ref: '#/components/schemas/ListCertificateObjectResponse.UncommittedCertificateObjectDetails' title: Certificateobjectuncommitted type: array NextToken: maxLength: 2048 minLength: 1 pattern: ^[-0-9A-Za-z:\/+=]+$ title: Nexttoken type: string RuleStackName: title: Rulestackname type: string title: ResponseData type: object DescribeCertificateObjectRequest: additionalProperties: false properties: Candidate: default: true title: Candidate type: boolean MaxResults: default: 100 exclusiveMaximum: 101 exclusiveMinimum: 0 title: Maxresults type: integer NextToken: maxLength: 2048 minLength: 1 pattern: ^[-0-9A-Za-z:\/+=]+$ title: Nexttoken type: string Running: default: false title: Running type: boolean title: DescribeCertificateObjectRequest type: object ListCertificateObjectResponse.UncommittedCertificateObjectDetails: additionalProperties: false properties: Name: maxLength: 128 minLength: 1 pattern: ^[a-zA-Z0-9-]+$ title: Name type: string Operation: title: Operation type: string required: - Name - Operation title: UncommittedCertificateObjectDetails type: object DescribeCertificateObjectResponse.CertificateDetails: additionalProperties: false properties: AuditComment: title: Auditcomment type: string CertificateSelfSigned: title: Certificateselfsigned type: boolean CertificateSignerArn: title: Certificatesignerarn type: string Description: title: Description type: string UpdateToken: title: Updatetoken type: string title: CertificateDetails type: object UpdateCertificateObjectResponse.CertificateDetails: additionalProperties: false properties: AuditComment: title: Auditcomment type: string CertificateSelfSigned: title: Certificateselfsigned type: boolean CertificateSignerArn: title: Certificatesignerarn type: string Description: title: Description type: string UpdateToken: title: Updatetoken type: string title: CertificateDetails type: object DeleteCertificateObjectResponse.Result: additionalProperties: false properties: ErrorCode: default: 0 title: Errorcode type: integer Reason: title: Reason type: string title: Result type: object DeleteCertificateObjectRequest: additionalProperties: false properties: {} title: DeleteCertificateObjectRequest type: object UpdateCertificateObjectRequest: additionalProperties: false properties: AuditComment: maxLength: 512 title: Auditcomment type: string CertificateSelfSigned: default: false title: Certificateselfsigned type: boolean CertificateSignerArn: title: Certificatesignerarn type: string Description: maxLength: 512 title: Description type: string UpdateToken: title: Updatetoken type: string title: UpdateCertificateObjectRequest type: object DescribeCertificateObjectResponse.Result: additionalProperties: false properties: ErrorCode: default: 0 title: Errorcode type: integer Reason: title: Reason type: string title: Result type: object ListCertificateObjectResponse: additionalProperties: false properties: Response: $ref: '#/components/schemas/ListCertificateObjectResponse.ResponseData' ResponseStatus: $ref: '#/components/schemas/ListCertificateObjectResponse.Result' title: ListCertificateObjectResponse type: object DeleteCertificateObjectResponse.CertificateDetails: additionalProperties: false properties: AuditComment: title: Auditcomment type: string CertificateSelfSigned: title: Certificateselfsigned type: boolean CertificateSignerArn: title: Certificatesignerarn type: string Description: title: Description type: string UpdateToken: title: Updatetoken type: string title: CertificateDetails type: object UpdateCertificateObjectResponse.ResponseData: additionalProperties: false properties: CertificateObjectEntry: $ref: '#/components/schemas/UpdateCertificateObjectResponse.CertificateDetails' Name: title: Name type: string RuleStackName: title: Rulestackname type: string title: ResponseData type: object CreateCertificateObjectResponse.ResponseData: additionalProperties: false properties: CertificateObjectEntry: $ref: '#/components/schemas/CreateCertificateObjectResponse.CertificateDetails' Name: title: Name type: string RuleStackName: title: Rulestackname type: string title: ResponseData type: object