openapi: 3.0.3 info: version: 1.66.0 title: FusionAuth Api Key Consent API description: This is a FusionAuth server. Find out more at [https://fusionauth.io](https://fusionauth.io). You need to [set up an API key](https://fusionauth.io/docs/v1/tech/apis/authentication#managing-api-keys) in the FusionAuth instance you are using to test out the API calls. license: name: Apache2 servers: - url: http://localhost:9011 - url: https://sandbox.fusionauth.io security: - ApiKeyAuth: [] tags: - name: Consent paths: /api/consent: post: description: Creates a user consent type. You can optionally specify an Id for the consent type, if not provided one will be generated. operationId: createConsent parameters: - in: header name: X-FusionAuth-TenantId description: The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped. required: false schema: type: string format: UUID requestBody: content: application/json: schema: $ref: '#/components/schemas/ConsentRequest' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ConsentResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/Errors' tags: - Consent /api/consent/search: post: description: Searches consents with the specified criteria and pagination. operationId: searchConsentsWithId parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/ConsentSearchRequest' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ConsentSearchResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/Errors' tags: - Consent /api/consent/{consentId}: post: description: Creates a user consent type. You can optionally specify an Id for the consent type, if not provided one will be generated. operationId: createConsentWithId parameters: - name: consentId in: path schema: type: string required: true description: The Id for the consent. If not provided a secure random UUID will be generated. - in: header name: X-FusionAuth-TenantId description: The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped. required: false schema: type: string format: UUID requestBody: content: application/json: schema: $ref: '#/components/schemas/ConsentRequest' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ConsentResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/Errors' tags: - Consent delete: description: Deletes the consent for the given Id. operationId: deleteConsentWithId parameters: - name: consentId in: path schema: type: string required: true description: The Id of the consent to delete. - in: header name: X-FusionAuth-TenantId description: The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped. required: false schema: type: string format: UUID responses: '200': description: Success default: description: Error content: application/json: schema: $ref: '#/components/schemas/Errors' tags: - Consent patch: description: Updates, via PATCH, the consent with the given Id. operationId: patchConsentWithId parameters: - name: consentId in: path schema: type: string required: true description: The Id of the consent to update. - in: header name: X-FusionAuth-TenantId description: The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped. required: false schema: type: string format: UUID requestBody: content: application/json: schema: $ref: '#/components/schemas/ConsentRequest' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ConsentResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/Errors' tags: - Consent get: description: Retrieves the Consent for the given Id. operationId: retrieveConsentWithId parameters: - name: consentId in: path schema: type: string required: true description: The Id of the consent. - in: header name: X-FusionAuth-TenantId description: The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped. required: false schema: type: string format: UUID responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ConsentResponse' default: description: Error tags: - Consent put: description: Updates the consent with the given Id. operationId: updateConsentWithId parameters: - name: consentId in: path schema: type: string required: true description: The Id of the consent to update. - in: header name: X-FusionAuth-TenantId description: The unique Id of the tenant used to scope this API request. Only required when there is more than one tenant and the API key is not tenant-scoped. required: false schema: type: string format: UUID requestBody: content: application/json: schema: $ref: '#/components/schemas/ConsentRequest' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ConsentResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/Errors' tags: - Consent components: schemas: Errors: description: Standard error domain object that can also be used as the response from an API call. type: object properties: fieldErrors: type: array items: $ref: '#/components/schemas/Error' generalErrors: type: array items: $ref: '#/components/schemas/Error' ZonedDateTime: description: 'The number of milliseconds since the unix epoch: January 1, 1970 00:00:00 UTC. This value is always in UTC.' example: '1659380719000' type: integer format: int64 Error: description: Defines an error. type: object properties: code: type: string data: type: object additionalProperties: type: object message: type: string Consent: description: Models a consent. type: object properties: data: type: object additionalProperties: type: object consentEmailTemplateId: type: string format: uuid countryMinimumAgeForSelfConsent: $ref: '#/components/schemas/LocalizedIntegers' defaultMinimumAgeForSelfConsent: type: integer emailPlus: $ref: '#/components/schemas/EmailPlus' id: type: string format: uuid insertInstant: $ref: '#/components/schemas/ZonedDateTime' lastUpdateInstant: $ref: '#/components/schemas/ZonedDateTime' multipleValuesAllowed: type: boolean name: type: string values: type: array items: type: string ConsentResponse: description: API response for consent. type: object properties: consent: $ref: '#/components/schemas/Consent' consents: type: array items: $ref: '#/components/schemas/Consent' ConsentRequest: description: API request for User consent types. type: object properties: consent: $ref: '#/components/schemas/Consent' ConsentSearchCriteria: description: Search criteria for Consents type: object properties: name: type: string numberOfResults: type: integer orderBy: type: string startRow: type: integer LocalizedIntegers: description: Models a set of localized Integers that can be stored as JSON. type: object properties: {} ConsentSearchResponse: description: Consent search response type: object properties: consents: type: array items: $ref: '#/components/schemas/Consent' total: type: integer format: int64 ConsentSearchRequest: description: Search request for Consents type: object properties: search: $ref: '#/components/schemas/ConsentSearchCriteria' EmailPlus: type: object properties: emailTemplateId: type: string format: uuid maximumTimeToSendEmailInHours: type: integer minimumTimeToSendEmailInHours: type: integer enabled: type: boolean securitySchemes: ApiKeyAuth: type: apiKey name: Authorization in: header BearerAuth: type: http scheme: bearer bearerFormat: JWT