Pickaxe Learn

API Reference

User

Endpoints for end users, user state, and user-level access behaviors.


Related In Learn

Users

Monitor user activity, manage memory, and administer your user base.

Open Learn

User endpoints manage end users, user state, and user-level access behaviors.

Endpoints

POST /studio/user/create

Create a new user with the provided details.

  • Full URL: https://api.pickaxe.co/v1/studio/user/create

Request Fields

  • email (string, required): The email of the user to be created.
  • password (string, optional): The password for the user to be created.
  • name (string, optional): The name of the user to be created.
  • image (string, optional): The image URL of the user to be created.
  • ipAddress (string, optional): The IP address of the user to be created.
  • products (string[], optional): The product ids to associate with the user. Deprecated: This field is will no longer be supported in the future, please use the 'accessGroupId' field instead.
  • accessGroupId (string, optional): The access group id to associate with the user. Example: {{ACCESS_GROUPS}}
  • isEmailVerified (boolean, optional): Whether the user's email is verified. Defaults to false.

Examples

curl -X POST https://api.pickaxe.co/v1/studio/user/create \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
  "email": "jane.doe@example.com",
  "password": "securepassword",
  "name": "Jane Doe",
  "image": "https://example.com/image.jpg",
  "ipAddress": "123.456.789",
  "products": ["product1", "product2"],
  "isEmailVerified": true
}'

POST /studio/user/invite

Invite a new user by sending an invitation email.

  • Full URL: https://api.pickaxe.co/v1/studio/user/invite

Request Fields

  • emails (string[], required): The email addresses of the users to be invited.
  • productIds (string[], optional): The product ids to associate with the users to be invited. Deprecated: This field is will no longer be supported in the future, please use the 'accessGroupId' field instead.
  • accessGroupId (string, optional): The access group id to associate with the users to be invited. Example: {{ACCESS_GROUPS}}

Examples

curl -X POST https://api.pickaxe.co/v1/studio/user/invite \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
  "emails": ["jane.doe@example.com"],
  "productIds": ["product1", "product2"]
}'

GET /studio/user/list

List all users with optional pagination.

  • Full URL: https://api.pickaxe.co/v1/studio/user/list

Request Fields

  • skip (number, optional): The number of users to skip for pagination. Defaults to 0.
  • take (number, optional): The number of users to take for pagination. Defaults to 10.

Examples

curl -X GET https://api.pickaxe.co/v1/studio/user/list?skip=0&take=10 \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN"

GET /studio/user/<email>

Retrieve a specific user by their email.

  • Full URL: https://api.pickaxe.co/v1/studio/user/<email>

Request Fields

  • email (string, required): The email of the user to retrieve.

Examples

curl -X GET https://api.pickaxe.co/v1/studio/user/jane.doe@example.com \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN"

PATCH /studio/user/<email>

Update a specific user by their email.

  • Full URL: https://api.pickaxe.co/v1/studio/user/<email>

Request Fields

  • email (string, required): The email of the user to update.
  • data (object, required): The data to update the user with.
    • password (string, optional): The new password for the user.
    • name (string, optional): The new name for the user.
    • image (string, optional): The new image URL for the user.
    • ipAddress (string, optional): The new IP address for the user.
    • products (string[], optional): The new product ids to be associated with the user. Deprecated: This field is will no longer be supported in the future, please use the 'accessGroupId' field instead.
    • accessGroupId (string, optional): The new access group id to be associated with the user. Example: {{ACCESS_GROUPS}}
    • isEmailVerified (boolean, optional): Whether the user's email is verified.
    • summary (string, optional): The summary of the user.
    • currentUses (number, optional): The current uses of the user.
    • extraUses (number, optional): The extra uses of the user.

Examples

curl -X PATCH https://api.pickaxe.co/v1/studio/user/jane.doe@example.com \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
  "data": {
    "name": "Jane Doe",
    "image": "https://example.com/image-updated.jpg",
    "ipAddress": "987.654.321",
    "products": ["product1", "product2", "product3"],
    "isEmailVerified": true,
    "summary": "Updated summary of the user.",
    "currentUses": 100,
    "extraUses": 50
  }
}'

DELETE /studio/user/<email>

Delete a specific user by their email.

  • Full URL: https://api.pickaxe.co/v1/studio/user/<email>

Request Fields

  • email (string, required): The email of the user to delete.

Examples

curl -X DELETE https://api.pickaxe.co/v1/studio/user/jane.doe@example.com \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN"