---
title: Create Action URL
url: https://platform.claude.com/docs/en/api/php/user_profiles/action_urls/create
---

# Create Action URL

`$client->userProfiles->actionURLs->create(string userProfileID, UserProfileEnrollEndUserAction action, ?string workspaceID): UserProfileActionURL`

**POST** `/v1/user_profiles/{user_profile_id}/action_urls`

Create Action URL

## Parameters

- `userProfileID: string` (path parameter)

  The ID of the user profile the action is for (`uprof_...`).

- `action: UserProfileEnrollEndUserAction`

  The action that the person who opens the URL takes.

- `workspaceID?: optional string` (header parameter)

  Optional header to select the Workspace for this request. The value is a Workspace ID (for example, `wrkspc_011CZkZaBF1tNoB5wlCeusgy`).

  Only needed for credentials that can act on more than one Workspace. A credential that belongs to a specific Workspace may omit it; if sent, it must match that Workspace.

## Returns

- `class UserProfileActionURL`

  - `"user_profile_action_url" type`

    Object type. Always `user_profile_action_url`.

  - `\Datetime expiresAt`

    When the URL stops working, in RFC 3339 format.

  - `string url`

    The URL to give to the person who takes the action. Anyone who holds it can open it until `expires_at`.

## Example

```php
<?php

require_once dirname(__DIR__) . '/vendor/autoload.php';

use Anthropic\Client;

$client = new Client(apiKey: 'my-anthropic-api-key');

$userProfileActionURL = $client->userProfiles->actionURLs->create(
  'uprof_011CZkZCu8hGbp5mYRQgUmz9',
  action: ['type' => 'enroll_end_user'],
  workspaceID: 'wrkspc_011CZkZaBF1tNoB5wlCeusgy',
);

var_dump($userProfileActionURL);
```

### Response (200)

```json
{
  "expires_at": "2026-03-15T10:15:00Z",
  "type": "user_profile_action_url",
  "url": "https://platform.claude.com/user-profiles/enrollment/M3J0bGJxZ2ppMnptbnB1"
}
```
