curl -sS -X POST 'https://apipub.firstbasehq.com/scim/v2/Users' \
-H 'Authorization: ApiKey YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/scim+json' \
-d '{
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:extension:firstbase:1.0:User"
],
"userName": "jenny.smith@example.com",
"name": {
"givenName": "Jenny",
"familyName": "Smith"
},
"emails": [
{
"value": "jenny.smith@example.com",
"primary": true
}
],
"addresses": [
{
"type": "home",
"primary": true,
"country": "US",
"streetAddress": "123 Market St",
"postalCode": "94105",
"region": "CA",
"locality": "San Francisco"
}
],
"phoneNumbers": [
{
"value": "+15558675309",
"primary": true
}
],
"urn:ietf:params:scim:schemas:extension:firstbase:1.0:User": {
"packageId": "d1b0fd87-5fc9-410c-b641-0b7146896ccd",
"startDate": "2026-09-01",
"skipUserActivation": false
}
}'import requests
url = "https://apipub.firstbasehq.com/scim/v2/Users"
payload = {
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User", "urn:ietf:params:scim:schemas:extension:firstbase:1.0:User"],
"userName": "jenny.smith@example.com",
"name": {
"givenName": "Jenny",
"familyName": "Smith"
},
"emails": [
{
"value": "jenny.smith@example.com",
"primary": True
}
],
"addresses": [
{
"type": "home",
"primary": True,
"country": "US",
"streetAddress": "123 Market St",
"postalCode": "94105",
"region": "CA",
"locality": "San Francisco"
}
],
"urn:ietf:params:scim:schemas:extension:firstbase:1.0:User": {
"packageId": "d1b0fd87-5fc9-410c-b641-0b7146896ccd",
"startDate": "2026-09-01",
"skipUserActivation": False
}
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/scim+json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/scim+json'},
body: JSON.stringify({
schemas: [
'urn:ietf:params:scim:schemas:core:2.0:User',
'urn:ietf:params:scim:schemas:extension:firstbase:1.0:User'
],
userName: 'jenny.smith@example.com',
name: {givenName: 'Jenny', familyName: 'Smith'},
emails: [{value: 'jenny.smith@example.com', primary: true}],
addresses: [
{
type: 'home',
primary: true,
country: 'US',
streetAddress: '123 Market St',
postalCode: '94105',
region: 'CA',
locality: 'San Francisco'
}
],
'urn:ietf:params:scim:schemas:extension:firstbase:1.0:User': {
packageId: 'd1b0fd87-5fc9-410c-b641-0b7146896ccd',
startDate: '2026-09-01',
skipUserActivation: false
}
})
};
fetch('https://apipub.firstbasehq.com/scim/v2/Users', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"addresses": [
{
"country": "US",
"locality": "New York City",
"postalCode": 10123,
"region": "NY",
"streetAddress": 123,
"primary": true
}
],
"userName": "jenny.smith@example.com",
"emails": [
{
"value": "jenny.smith@example.com",
"primary": true
}
],
"name": {
"familyName": "Smith",
"givenName": "Jenny"
},
"urn:ietf:params:scim:schemas:extension:firstbase:1.0:User": {
"skipUserActivation": false,
"packageId": "d1b0fd87-5fc9-410c-b641-0b7146896ccd",
"startDate": "2022-02-01",
"status": "ACTIVE",
"cpfNumber": 87456236985
},
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:extension:firstbase:1.0:User"
],
"phoneNumbers": [
{
"value": "1+555-867-5309",
"primary": true
}
]
}{
"errors": [
{
"detail": "Invalid request",
"source": "request"
}
]
}{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:Error"
],
"detail": "Resource 2819c223-7f76-453a-919d-413861904646 not found",
"status": "404"
}{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:Error"
],
"detail": "Resource already exists",
"scimType": "uniqueness",
"status": "409"
}Create person
Creates a new person record in Firstbase using the SCIM 2.0 protocol. Triggers automatic equipment ordering if the person is assigned to an active package. The userName field must be a unique email address. Returns 409 if a user with the same userName already exists.
curl -sS -X POST 'https://apipub.firstbasehq.com/scim/v2/Users' \
-H 'Authorization: ApiKey YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/scim+json' \
-d '{
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:extension:firstbase:1.0:User"
],
"userName": "jenny.smith@example.com",
"name": {
"givenName": "Jenny",
"familyName": "Smith"
},
"emails": [
{
"value": "jenny.smith@example.com",
"primary": true
}
],
"addresses": [
{
"type": "home",
"primary": true,
"country": "US",
"streetAddress": "123 Market St",
"postalCode": "94105",
"region": "CA",
"locality": "San Francisco"
}
],
"phoneNumbers": [
{
"value": "+15558675309",
"primary": true
}
],
"urn:ietf:params:scim:schemas:extension:firstbase:1.0:User": {
"packageId": "d1b0fd87-5fc9-410c-b641-0b7146896ccd",
"startDate": "2026-09-01",
"skipUserActivation": false
}
}'import requests
url = "https://apipub.firstbasehq.com/scim/v2/Users"
payload = {
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User", "urn:ietf:params:scim:schemas:extension:firstbase:1.0:User"],
"userName": "jenny.smith@example.com",
"name": {
"givenName": "Jenny",
"familyName": "Smith"
},
"emails": [
{
"value": "jenny.smith@example.com",
"primary": True
}
],
"addresses": [
{
"type": "home",
"primary": True,
"country": "US",
"streetAddress": "123 Market St",
"postalCode": "94105",
"region": "CA",
"locality": "San Francisco"
}
],
"urn:ietf:params:scim:schemas:extension:firstbase:1.0:User": {
"packageId": "d1b0fd87-5fc9-410c-b641-0b7146896ccd",
"startDate": "2026-09-01",
"skipUserActivation": False
}
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/scim+json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/scim+json'},
body: JSON.stringify({
schemas: [
'urn:ietf:params:scim:schemas:core:2.0:User',
'urn:ietf:params:scim:schemas:extension:firstbase:1.0:User'
],
userName: 'jenny.smith@example.com',
name: {givenName: 'Jenny', familyName: 'Smith'},
emails: [{value: 'jenny.smith@example.com', primary: true}],
addresses: [
{
type: 'home',
primary: true,
country: 'US',
streetAddress: '123 Market St',
postalCode: '94105',
region: 'CA',
locality: 'San Francisco'
}
],
'urn:ietf:params:scim:schemas:extension:firstbase:1.0:User': {
packageId: 'd1b0fd87-5fc9-410c-b641-0b7146896ccd',
startDate: '2026-09-01',
skipUserActivation: false
}
})
};
fetch('https://apipub.firstbasehq.com/scim/v2/Users', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"addresses": [
{
"country": "US",
"locality": "New York City",
"postalCode": 10123,
"region": "NY",
"streetAddress": 123,
"primary": true
}
],
"userName": "jenny.smith@example.com",
"emails": [
{
"value": "jenny.smith@example.com",
"primary": true
}
],
"name": {
"familyName": "Smith",
"givenName": "Jenny"
},
"urn:ietf:params:scim:schemas:extension:firstbase:1.0:User": {
"skipUserActivation": false,
"packageId": "d1b0fd87-5fc9-410c-b641-0b7146896ccd",
"startDate": "2022-02-01",
"status": "ACTIVE",
"cpfNumber": 87456236985
},
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:extension:firstbase:1.0:User"
],
"phoneNumbers": [
{
"value": "1+555-867-5309",
"primary": true
}
]
}{
"errors": [
{
"detail": "Invalid request",
"source": "request"
}
]
}{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:Error"
],
"detail": "Resource 2819c223-7f76-453a-919d-413861904646 not found",
"status": "404"
}{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:Error"
],
"detail": "Resource already exists",
"scimType": "uniqueness",
"status": "409"
}Authorizations
Prefix the value with "ApiKey" to indicate the custom authorization type
Query Parameters
Comma-separated SCIM defined attributes to be returned. Required attributes are always returned
Comma-separated SCIM defined attributes to be excluded. Required attributes cannot be excluded
Body
A physical mailing address for this user. If multiple addresses are present, the element that will be used as the user's Firstbase address will be selected by the following precedence: type home marked as primary, the first home address, the primary address, otherwise the first provided address.
Show child attributes
Show child attributes
The userName must match the primary email address.
"jenny.smith@example.com"
Email addresses for the user. If multiple addresses are present, the primary will be used, otherwise the first element will be the user's Firstbase primary email AND userName.
Show child attributes
Show child attributes
The components of the user's name.
Show child attributes
Show child attributes
Firstbase onboarding attributes for the user (package, start date, status, CPF, activation).
Show child attributes
Show child attributes
The schemas defining the attributes of the resources.
[
"urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:extension:firstbase:1.0:User"
]
Phone numbers for the user. The value SHOULD be specified according to the format defined in [RFC3966], e.g., 'tel:+1-201-555-0123' If multiple phone numbers are present, the primary otherwise the first element will be the user's Firstbase phone number.
Show child attributes
Show child attributes
Response
User has been created
SCIM id of the person (Firstbase person UUID). Read-only on responses.
A physical mailing address for this user. If multiple addresses are present, the element that will be used as the user's Firstbase address will be selected by the following precedence: type home marked as primary, the first home address, the primary address, otherwise the first provided address.
Show child attributes
Show child attributes
The userName must match the primary email address.
"jenny.smith@example.com"
Email addresses for the user. If multiple addresses are present, the primary will be used, otherwise the first element will be the user's Firstbase primary email AND userName.
Show child attributes
Show child attributes
The components of the user's name.
Show child attributes
Show child attributes
Firstbase onboarding attributes for the user (package, start date, status, CPF, activation).
Show child attributes
Show child attributes
The schemas defining the attributes of the resources.
[
"urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:extension:firstbase:1.0:User"
]
Phone numbers for the user. The value SHOULD be specified according to the format defined in [RFC3966], e.g., 'tel:+1-201-555-0123' If multiple phone numbers are present, the primary otherwise the first element will be the user's Firstbase phone number.
Show child attributes
Show child attributes