Add a User to a Family API

On this page

This API is used to add a User to a Family. You cannot directly create a family, instead a family is implicitly created when the first User is added.

Request#

API Key Authentication
Add a User to a Family with a randomly generated Id
POST/api/user/family
OpenAPI Spec

Request Headers#

X-FusionAuth-TenantId
  • Type: String
  • Optional

The unique Id of the tenant used to scope this API request.

The tenant Id is not required on this request even when more than one tenant has been configured because the tenant can be identified based upon other values in the request or it is otherwise not required.

Specify a tenant Id on this request when you want to ensure the request is scoped to a specific tenant. The tenant Id may be provided through this header or by using a tenant locked API key to achieve the same result.

See Making an API request using a Tenant Id for additional information.

API Key Authentication
Add a User to a Family with the provided unique Id
POST/api/user/family/{familyId}
OpenAPI Spec

Path Parameters#

familyId
  • Type: UUID
  • Optional
  • Defaults to secure random UUID
  • Immutable

The Id to use for the new Family. If not specified a secure random UUID will be generated.

Request Headers#

X-FusionAuth-TenantId
  • Type: String
  • Optional

The unique Id of the tenant used to scope this API request.

The tenant Id is not required on this request even when more than one tenant has been configured because the tenant can be identified based upon other values in the request or it is otherwise not required.

Specify a tenant Id on this request when you want to ensure the request is scoped to a specific tenant. The tenant Id may be provided through this header or by using a tenant locked API key to achieve the same result.

See Making an API request using a Tenant Id for additional information.

Request Body#
familyMember.userId
  • Type: UUID
  • Required

The unique userId of the User to add to a family.

familyMember.owner
  • Type: Boolean
  • Optional
  • Defaults to false

Set to true to indicate a family owner. This value will be ignored if the user role is Teen or Child.

familyMember.role
  • Type: String
  • Required

The role of the user in the family.

When creating a family the first user must be an adult. This value must be set to Adult.
Example Request JSON
{
  "familyMember": {
    "userId": "b3360a2d-e81d-4314-b9f1-244a916ca52f",
    "owner": true,
    "role": "Adult"
  }
}

Response#

The response for this API contains the Family that was created.

Response Codes
CodeDescription
200The request was successful. The response will contain a JSON body.
400The request was invalid and/or malformed. The response will contain an Errors JSON Object with the specific errors. This status will also be returned if a paid FusionAuth license is required and is not present.
401You did not supply a valid Authorization header. The header was omitted or your API key was not valid. The response will be empty. See Authentication.
500There was an internal error. A stack trace is provided and logged in the FusionAuth log files. The response will be empty.
503The search index is not available or encountered an exception so the request cannot be completed. The response will contain a JSON body.

Response Body#

family.id
  • Type: UUID

The unique Id of the family.

family.insertInstant
  • Type: Long

The instant that the Family was added to the FusionAuth database.

family.lastUpdateInstant
  • Type: Long

The instant that the Family was updated in the FusionAuth database.

family.members
  • Type: Array<Object>

The members of this family.

family.members[x].insertInstant
  • Type: Long

The instant when the user was added to the family.

families.members[x].lastUpdateInstant
  • Type: Long

The instant when the family member was last updated.

family.members[x].owner
  • Type: Boolean

True if this user is the owner of the family, the first Adult user in the family will automatically be set as the owner. A teen or child cannot be the family owner.

family.members[x].role
  • Type: String

The role of the family member.

The possible values are:
  • Adult
  • Child
  • Teen
family.members[x].userId
  • Type: UUID

The unique user Id of the family member.

Example Response JSON
{
  "family": {
    "id": "a815b480-d52d-4755-96ac-749c067925d7",
    "insertInstant": 1595361142909,
    "lastUpdateInstant": 1595361143101,
    "members": [
      {
        "insertInstant": 1562010348111,
        "lastUpdateInstant": 1595361143101,
        "owner": true,
        "role": "Adult",
        "userId": "b3360a2d-e81d-4314-b9f1-244a916ca52f"
      }
    ]
  }
}