Creates a new bot user for machine-to-machine authentication.
Usage Example
POST /api/v1/auth/bots
Authorization: Bearer {access_token}
Content-Type: application/json
{
"email": "salesforce-integration@acme.com",
"firstName": "Salesforce",
"lastName": "Integration"
}
Success Response (201 Created):
HTTP/1.1 201 Created
Location: /api/v1/auth/bots/bot-abc123
Content-Type: application/json
{
"id": "bot-abc123",
"email": "salesforce-integration@acme.com",
"firstName": "Salesforce",
"lastName": "Integration",
"fullName": "Salesforce Integration"
}
Validation Rules
- email: Required, must be valid email format, must be unique within tenant
- firstName: Optional, 1-100 characters
- lastName: Optional, 1-100 characters
Next Steps
After creating a bot user:
- Create an OAuth client associated with this bot:
POST /api/v1/auth/clientswithbotUserId - Use the client credentials (client_id + client_secret) to obtain access tokens
- Use access tokens to authenticate API requests on behalf of the bot user
Best Practices
- Use descriptive names that identify the integration purpose
- Use dedicated email addresses (e.g.,
integration-name@company.com) - Store client credentials securely (never commit to source control)
- Rotate credentials regularly
Body·
required
Bot user details including email, first name, and last name
Request to create a new bot user for machine-to-machine API authentication.
- Type: stringemailmax length:255required
Email address for the bot user (required, must be unique).
- Type: null | stringfirst
Name max length:100Optional first name for the bot user.
- Type: null | stringlast
Name max length:100Optional last name for the bot user.
Responses
- application/json
- application/problem+json
- application/problem+json
- application/problem+json
- application/problem+json
Request Example for post/api/v1/auth/bots
curl https://app.propstreet.com/api/v1/auth/bots \
--request POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
--data '{
"email": "salesforce-integration@acme.com",
"firstName": "Salesforce",
"lastName": "Production Integration"
}'
{
"id": "bot-abc123",
"email": "salesforce-integration@acme.com",
"firstName": "Salesforce",
"lastName": "Production Integration",
"fullName": "Salesforce Production Integration"
}