| Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
| POST | /codelock/axema/usersync | Start a sync of users from the Axema Vaka system into BokaMera customers | This operation runs in the background and may take several minutes. Use the GET endpoint to check status. Only one sync can run at a time per company. |
|---|
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;
public class dtos
{
@ValidateRequest(Validator="IsAuthenticated")
@ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
// @ApiResponse(Description="You have too low privileges to call this service", StatusCode=403)
public static class CreateAxemaUserSync implements ICompany
{
/**
* The company id, if empty will use the company id for the user you are logged in with.
*/
@ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.")
public UUID CompanyId = null;
public UUID getCompanyId() { return CompanyId; }
public CreateAxemaUserSync setCompanyId(UUID value) { this.CompanyId = value; return this; }
}
public static class AxemaUserSyncJobResponse
{
public UUID Id = null;
public UUID CompanyId = null;
public Integer Status = null;
public String StatusName = null;
public Integer UsersFound = null;
public Integer UsersCreated = null;
public Integer UsersUpdated = null;
public String ErrorMessage = null;
public Date CreatedDate = null;
public Date UpdatedDate = null;
public UUID getId() { return Id; }
public AxemaUserSyncJobResponse setId(UUID value) { this.Id = value; return this; }
public UUID getCompanyId() { return CompanyId; }
public AxemaUserSyncJobResponse setCompanyId(UUID value) { this.CompanyId = value; return this; }
public Integer getStatus() { return Status; }
public AxemaUserSyncJobResponse setStatus(Integer value) { this.Status = value; return this; }
public String getStatusName() { return StatusName; }
public AxemaUserSyncJobResponse setStatusName(String value) { this.StatusName = value; return this; }
public Integer getUsersFound() { return UsersFound; }
public AxemaUserSyncJobResponse setUsersFound(Integer value) { this.UsersFound = value; return this; }
public Integer getUsersCreated() { return UsersCreated; }
public AxemaUserSyncJobResponse setUsersCreated(Integer value) { this.UsersCreated = value; return this; }
public Integer getUsersUpdated() { return UsersUpdated; }
public AxemaUserSyncJobResponse setUsersUpdated(Integer value) { this.UsersUpdated = value; return this; }
public String getErrorMessage() { return ErrorMessage; }
public AxemaUserSyncJobResponse setErrorMessage(String value) { this.ErrorMessage = value; return this; }
public Date getCreatedDate() { return CreatedDate; }
public AxemaUserSyncJobResponse setCreatedDate(Date value) { this.CreatedDate = value; return this; }
public Date getUpdatedDate() { return UpdatedDate; }
public AxemaUserSyncJobResponse setUpdatedDate(Date value) { this.UpdatedDate = value; return this; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /codelock/axema/usersync HTTP/1.1
Host: api.bokamera.se
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"CompanyId":"00000000-0000-0000-0000-000000000000"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"Status":0,"StatusName":"String","UsersFound":0,"UsersCreated":0,"UsersUpdated":0,"ErrorMessage":"String"}