## Retrieve Invitation

### cURL

curl --request GET \
      --url https://api.m3ter.com/organizations/{orgId}/invitations/{id} \
      --header 'Authorization: Bearer <token>'

### Python

import requests

url = "https://api.m3ter.com/organizations/{orgId}/invitations/{id}"

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers)

print(response.text)

### JavaScript

const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

fetch('https://api.m3ter.com/organizations/{orgId}/invitations/{id}', options)
      .then(res => res.json())
      .then(res => console.log(res))
      .catch(err => console.error(err));

### PHP

<?php

$curl = curl_init();

curl_setopt_array($curl, [\
      CURLOPT_URL => "https://api.m3ter.com/organizations/{orgId}/invitations/{id}",\
      CURLOPT_RETURNTRANSFER => true,\
      CURLOPT_ENCODING => "",\
      CURLOPT_MAXREDIRS => 10,\
      CURLOPT_TIMEOUT => 30,\
      CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\
      CURLOPT_CUSTOMREQUEST => "GET",\
      CURLOPT_HTTPHEADER => [\
        "Authorization: Bearer <token>"\
      ],\
    ]);

$response = curl_exec($curl);
    $err = curl_error($curl);

curl_close($curl);

if ($err) {
      echo "cURL Error #:" . $err;
    } else {
      echo $response;
    }
    ?>

### Go

package main

import (
		"fmt"
		"net/http"
		"io"
    )

func main() {

u := "https://api.m3ter.com/organizations/{orgId}/invitations/{id}"

req, _ := http.NewRequest("GET", u, nil)

req.Header.Add("Authorization", "Bearer <token>")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
		body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))
    }

### Unirest (Java)

HttpResponse<String> response = Unirest.get("https://api.m3ter.com/organizations/{orgId}/invitations/{id}")
      .header("Authorization", "Bearer <token>")
      .asString();

### Ruby

require 'uri'
    require 'net/http'

url = URI("https://api.m3ter.com/organizations/{orgId}/invitations/{id}")

http = Net::HTTP.new(url.host, url.port)
    http.use_ssl = true

request = Net::HTTP::Get.new(url)
    request["Authorization"] = 'Bearer <token>'

response = http.request(request)
    puts response.read_body

### Expected Responses

- **200**: 
    ```json
    {
      "id": "<string>",
      "version": 123,
      "email": "<string>",
      "permissionPolicyIds": ["<string>"],
      "firstName": "<string>",
      "lastName": "<string>",
      "dtEndAccess": "2023-11-07T05:31:56Z",
      "dtExpiry": "2023-11-07T05:31:56Z",
      "invitingPrincipalId": "<string>",
      "accepted": true,
      "dtCreated": "2023-11-07T05:31:56Z",
      "dtLastModified": "2023-11-07T05:31:56Z",
      "createdBy": "<string>",
      "lastModifiedBy": "<string>"
    }
    ```

- **4XX**: 
    ```json
    {
      "message": "<string>"
    }
    ```

- **5XX**: 
    ```json
    {
      "message": "<string>"
    }
    ```

### Path Parameters
- **orgId**: string, required, UUID of the organization.
- **id**: string, required, UUID of the specific invitation to retrieve.

### Response Attributes
- **id**: string, required, The UUID of the entity.
- **version**: integer<int64>, The version number.
- **email**: string, The email address of the invitee.
- **permissionPolicyIds**: string[], The IDs of the permission policies assigned.
- **firstName**: string, The first name of the invitee.
- **lastName**: string, The surname of the invitee.
- **dtEndAccess**: string<date-time>, Date access ends for user.
- **dtExpiry**: string<date-time>, Date when the invite expires.
- **invitingPrincipalId**: string, The UUID of the user who sent the invite.
- **accepted**: boolean, Indicates whether the user accepted the invitation.
- **dtCreated**: string<date-time>, DateTime when the invitation was created.
- **dtLastModified**: string<date-time>, DateTime when the invitation was last modified.
- **createdBy**: string, The UUID of the user who created the invitation.
- **lastModifiedBy**: string, The UUID of the user who last modified the invitation.
