curl --request POST \
--url https://api.mycreditapp.ai/v1-beta/guest-invitations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Requester-Organization-ID: <requester-organization-id>' \
--header 'Target-Organization-ID: <target-organization-id>' \
--data '
{
"email": "guest@example.com",
"expired_at": "2025-12-31T23:59:59.123456",
"parent_organization_id": "b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88"
}
'import requests
url = "https://api.mycreditapp.ai/v1-beta/guest-invitations"
payload = {
"email": "guest@example.com",
"expired_at": "2025-12-31T23:59:59.123456",
"parent_organization_id": "b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88"
}
headers = {
"Requester-Organization-ID": "<requester-organization-id>",
"Target-Organization-ID": "<target-organization-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Requester-Organization-ID': '<requester-organization-id>',
'Target-Organization-ID': '<target-organization-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
email: 'guest@example.com',
expired_at: '2025-12-31T23:59:59.123456',
parent_organization_id: 'b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88'
})
};
fetch('https://api.mycreditapp.ai/v1-beta/guest-invitations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.mycreditapp.ai/v1-beta/guest-invitations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'email' => 'guest@example.com',
'expired_at' => '2025-12-31T23:59:59.123456',
'parent_organization_id' => 'b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Requester-Organization-ID: <requester-organization-id>",
"Target-Organization-ID: <target-organization-id>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.mycreditapp.ai/v1-beta/guest-invitations"
payload := strings.NewReader("{\n \"email\": \"guest@example.com\",\n \"expired_at\": \"2025-12-31T23:59:59.123456\",\n \"parent_organization_id\": \"b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Requester-Organization-ID", "<requester-organization-id>")
req.Header.Add("Target-Organization-ID", "<target-organization-id>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.mycreditapp.ai/v1-beta/guest-invitations")
.header("Requester-Organization-ID", "<requester-organization-id>")
.header("Target-Organization-ID", "<target-organization-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"email\": \"guest@example.com\",\n \"expired_at\": \"2025-12-31T23:59:59.123456\",\n \"parent_organization_id\": \"b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.mycreditapp.ai/v1-beta/guest-invitations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Requester-Organization-ID"] = '<requester-organization-id>'
request["Target-Organization-ID"] = '<target-organization-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"email\": \"guest@example.com\",\n \"expired_at\": \"2025-12-31T23:59:59.123456\",\n \"parent_organization_id\": \"b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88\"\n}"
response = http.request(request)
puts response.read_body{
"id": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"host_organization_id": "c9b1f0d1-8d3f-4cfa-91b8-9f9b0c5e2a77",
"email": "guest@example.com",
"first_invitation_sent_at": "2025-12-01T12:00:00.123456",
"last_invitation_sent_at": "2025-12-01T12:00:00.123456",
"expired_at": "2025-12-31T23:59:59.123456",
"expired": true,
"status": "sent",
"invitation_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"archived": true,
"created_at": "2025-12-11T09:00:00.123456",
"updated_at": "2025-12-11T09:00:00.123456",
"accepted_at": "2025-12-11T09:00:00.123456",
"archived_at": "2025-12-11T09:00:00.123456",
"parent_organization_id": "b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88",
"parent_organization_name": "Parent Organization Corp"
}{
"detail": [
{
"loc": [],
"msg": "Unsupported CRUD operation!",
"type": "request",
"code": "unsupported_crud_operation"
},
{
"loc": [],
"msg": "Invalid parent organization or email not found in partner list!",
"type": "request",
"code": "invalid_parent_organization"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Token is required!",
"type": "token",
"code": "token_required"
},
{
"loc": [],
"msg": "The token has expired!",
"type": "token",
"code": "token_expired"
},
{
"loc": [],
"msg": "Invalid token!",
"type": "token",
"code": "invalid_token"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Self email invitations are not allowed!",
"type": "request",
"code": "self_email_not_allowed"
},
{
"loc": [],
"msg": "Access denied!",
"type": "request",
"code": "access_denied"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Account not found!",
"type": "request",
"code": "account_not_found"
},
{
"loc": [],
"msg": "Organization not found!",
"type": "request",
"code": "organization_not_found"
}
]
}{
"detail": [
{
"loc": [],
"msg": "The organization is in the process of being deleted! The removal process may take up to 24 hours.",
"type": "request",
"code": "organization_being_deleted"
},
{
"loc": [],
"msg": "Guest invitation already exists!",
"type": "request",
"code": "guest_invitation_already_exists"
},
{
"loc": [],
"msg": "The account is in the process of being deleted! The Account's email can only be reused after its data has been completely deleted. The removal process may take up to 24 hours.",
"type": "request",
"code": "account_being_deleted"
},
{
"loc": [],
"msg": "Guest connection already exists!",
"type": "request",
"code": "guest_connection_already_exists"
}
]
}{
"detail": [
{
"loc": [],
"msg": "The request is too large!",
"type": "request",
"code": "request_too_large"
}
]
}{
"detail": [
{
"loc": [
"string",
0
],
"msg": "string",
"type": "string",
"code": "validation_error"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Error processing request, please try later!",
"type": "try_later",
"code": "internal_conflict_error"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Service is under maintenance, please try later!",
"type": "maintanance",
"code": "service_under_maintenance"
}
]
}Create guest invitation
curl --request POST \
--url https://api.mycreditapp.ai/v1-beta/guest-invitations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Requester-Organization-ID: <requester-organization-id>' \
--header 'Target-Organization-ID: <target-organization-id>' \
--data '
{
"email": "guest@example.com",
"expired_at": "2025-12-31T23:59:59.123456",
"parent_organization_id": "b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88"
}
'import requests
url = "https://api.mycreditapp.ai/v1-beta/guest-invitations"
payload = {
"email": "guest@example.com",
"expired_at": "2025-12-31T23:59:59.123456",
"parent_organization_id": "b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88"
}
headers = {
"Requester-Organization-ID": "<requester-organization-id>",
"Target-Organization-ID": "<target-organization-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Requester-Organization-ID': '<requester-organization-id>',
'Target-Organization-ID': '<target-organization-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
email: 'guest@example.com',
expired_at: '2025-12-31T23:59:59.123456',
parent_organization_id: 'b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88'
})
};
fetch('https://api.mycreditapp.ai/v1-beta/guest-invitations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.mycreditapp.ai/v1-beta/guest-invitations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'email' => 'guest@example.com',
'expired_at' => '2025-12-31T23:59:59.123456',
'parent_organization_id' => 'b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Requester-Organization-ID: <requester-organization-id>",
"Target-Organization-ID: <target-organization-id>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.mycreditapp.ai/v1-beta/guest-invitations"
payload := strings.NewReader("{\n \"email\": \"guest@example.com\",\n \"expired_at\": \"2025-12-31T23:59:59.123456\",\n \"parent_organization_id\": \"b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Requester-Organization-ID", "<requester-organization-id>")
req.Header.Add("Target-Organization-ID", "<target-organization-id>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.mycreditapp.ai/v1-beta/guest-invitations")
.header("Requester-Organization-ID", "<requester-organization-id>")
.header("Target-Organization-ID", "<target-organization-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"email\": \"guest@example.com\",\n \"expired_at\": \"2025-12-31T23:59:59.123456\",\n \"parent_organization_id\": \"b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.mycreditapp.ai/v1-beta/guest-invitations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Requester-Organization-ID"] = '<requester-organization-id>'
request["Target-Organization-ID"] = '<target-organization-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"email\": \"guest@example.com\",\n \"expired_at\": \"2025-12-31T23:59:59.123456\",\n \"parent_organization_id\": \"b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88\"\n}"
response = http.request(request)
puts response.read_body{
"id": "d290f1ee-6c54-4b01-90e6-d701748f0851",
"host_organization_id": "c9b1f0d1-8d3f-4cfa-91b8-9f9b0c5e2a77",
"email": "guest@example.com",
"first_invitation_sent_at": "2025-12-01T12:00:00.123456",
"last_invitation_sent_at": "2025-12-01T12:00:00.123456",
"expired_at": "2025-12-31T23:59:59.123456",
"expired": true,
"status": "sent",
"invitation_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"archived": true,
"created_at": "2025-12-11T09:00:00.123456",
"updated_at": "2025-12-11T09:00:00.123456",
"accepted_at": "2025-12-11T09:00:00.123456",
"archived_at": "2025-12-11T09:00:00.123456",
"parent_organization_id": "b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88",
"parent_organization_name": "Parent Organization Corp"
}{
"detail": [
{
"loc": [],
"msg": "Unsupported CRUD operation!",
"type": "request",
"code": "unsupported_crud_operation"
},
{
"loc": [],
"msg": "Invalid parent organization or email not found in partner list!",
"type": "request",
"code": "invalid_parent_organization"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Token is required!",
"type": "token",
"code": "token_required"
},
{
"loc": [],
"msg": "The token has expired!",
"type": "token",
"code": "token_expired"
},
{
"loc": [],
"msg": "Invalid token!",
"type": "token",
"code": "invalid_token"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Self email invitations are not allowed!",
"type": "request",
"code": "self_email_not_allowed"
},
{
"loc": [],
"msg": "Access denied!",
"type": "request",
"code": "access_denied"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Account not found!",
"type": "request",
"code": "account_not_found"
},
{
"loc": [],
"msg": "Organization not found!",
"type": "request",
"code": "organization_not_found"
}
]
}{
"detail": [
{
"loc": [],
"msg": "The organization is in the process of being deleted! The removal process may take up to 24 hours.",
"type": "request",
"code": "organization_being_deleted"
},
{
"loc": [],
"msg": "Guest invitation already exists!",
"type": "request",
"code": "guest_invitation_already_exists"
},
{
"loc": [],
"msg": "The account is in the process of being deleted! The Account's email can only be reused after its data has been completely deleted. The removal process may take up to 24 hours.",
"type": "request",
"code": "account_being_deleted"
},
{
"loc": [],
"msg": "Guest connection already exists!",
"type": "request",
"code": "guest_connection_already_exists"
}
]
}{
"detail": [
{
"loc": [],
"msg": "The request is too large!",
"type": "request",
"code": "request_too_large"
}
]
}{
"detail": [
{
"loc": [
"string",
0
],
"msg": "string",
"type": "string",
"code": "validation_error"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Error processing request, please try later!",
"type": "try_later",
"code": "internal_conflict_error"
}
]
}{
"detail": [
{
"loc": [],
"msg": "Service is under maintenance, please try later!",
"type": "maintanance",
"code": "service_under_maintenance"
}
]
}Authorizations
Bearer authentication using a JWT token. Provide a valid access token. Authorization header format: Authorization: Bearer <token>.
Headers
The unique identifier of the organization making the request. This ID is used to authorize the requester within the system.
"054b4106-174b-46b0-97f8-86d8d7b6f0af"
The unique identifier of the organization that is the target of the request.
The Target-Organization-ID may match the Requester-Organization-ID if the requester accesses their own resources.
If the Target-Organization-ID differs from the Requester-Organization-ID, the requester can access third-party resources if the requester has a connection with the target organization and is authorized to perform such actions.
"123e4567-e89b-12d3-a456-426614174000"
Body
Email address of the guest to be invited
3 - 100"guest@example.com"
Expiration datetime of the invitation. Must be in the future
"2025-12-31T23:59:59.123456"
Optional ID of the parent organization if the guest belongs to one
"b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88"
Response
Successful Response
Unique identifier of the guest invitation
"d290f1ee-6c54-4b01-90e6-d701748f0851"
ID of the organization that sent the invitation
"c9b1f0d1-8d3f-4cfa-91b8-9f9b0c5e2a77"
Email address of the guest to be invited
3 - 100"guest@example.com"
Timestamp when the first invitation was sent
"2025-12-01T12:00:00.123456"
Timestamp when the most recent invitation was sent
"2025-12-01T12:00:00.123456"
Expiration datetime of the invitation. Must be in the future
"2025-12-31T23:59:59.123456"
Indicates whether the invitation is expired
Current status of the invitation
sent, accepted_by_guest, accepted_by_system Unique token used to accept the invitation
10 - 2000"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
Flag indicating whether the invitation should be archived
Timestamp when the invitation was created
"2025-12-11T09:00:00.123456"
Timestamp when the invitation was last updated
"2025-12-11T09:00:00.123456"
Timestamp when the invitation was accepted, if applicable
"2025-12-11T09:00:00.123456"
Timestamp when the invitation was archived, if applicable
"2025-12-11T09:00:00.123456"
Optional ID of the parent organization if the guest belongs to one
"b123f0d1-8d3f-4cfa-91b8-9f9b0c5e2a88"
Name of the parent organization, if applicable
1 - 300"Parent Organization Corp"